易截截图软件、单文件、免安装、纯绿色、仅160KB

Ruby实践—用户登录

开发环境
Ruby:Ruby1.9.1
Rails:Rails2.3.5
Mysql:Mysql5.0.9
Driver:mysql-2.8.1-x86-mingw32.gem
IDE:Rubymine2.0.1
一、创建View/login
在View/login下创建login.html.erb、index.html.erb、loginFail.html.erb
login.html.erb代码如下:
<h1>Welcome to login!</h1>
<% form_tag do %>
<table>
<tr>
<td>User name:</td>
<td><%= text_field("user", "username") %></td>
</tr>
<tr>
<td>Password:</td>
<td><%= password_field("user", "hashed_password") %></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value=" login " /> <input type="reset" value=" reset " /></td>
</tr>
</table>
<% end %>

index.html.erb代码如下:
<h1>Choose a page to look!</h1>
<p><%= link_to 'Users', :controller=>"users",:action=>"index" %></p>
<p><%= link_to 'Products', :controller=>"products",:action=>"index"%></p>
<p><%= link_to 'Logout', :action=>"login"%></p>
loginFail.html.erb
<h1>Invalid user/password combination</h1>
<%form_tag do%>
<%= link_to 'Back', :action=>"login" %>
<%end%>
二、创建login_contoller.rb
代码如下:
class LoginController < ApplicationController
def login
if request.get?
session[:user_id] = nil
@user = User.new
else
@user = User.new(params[:user])
logged_in_user = @user.try_to_login
if logged_in_user
session[:user_id] = logged_in_user.id
redirect_to(:action => "index")
else
# flash[:notice] = "Invalid user/password combination"
redirect_to(:action => "loginFail")
end
end
end
def loginFail

end
#清空登录信息
def reset
params[:user]["username"]=null


相关文档:

Ruby watir 测试框架

转自 http://www.advidea.cn/biancheng/200943135232.html 
Ruby watir 测试框架
大多数人都会安装 ruby,
也通过Ruby 安装 gem,
也安装了ruby IDE开发工具:netbeans,
但就是不能跑watir环境,狂晕加吐中。。。
错误如下:
in `require': no such file to load -- watir (LoadError)
反正就是找不到watir,这里 ......

写的一个inter类模仿ruby整数的行为

我们知道ruby中对于整数的[],[]=,<<,>>操作是针对于二进制的值来运算的。
我现在写一个针对十进制数操作的类,拥有整数的所有方法,如下:
class InterEx
def initialize(val=0)
@val=val
end

def to_s
@val.to_s
end

def [](idx)
self.to_s[idx].to_i
end

d ......

使用ruby与MS Access数据库交互

ruby常规访问access数据库的方法应该是使用DBI库

require 'dbi'

DBI.connect("DBI:ADO:Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db.mdb;")

可是
简单尝试之后没能成功,提示找不到驱动器ADO,懒得再试,遂找其他方法。
一番搜索之后,发现可以用WIN32OLE来访问access,写一个简单的类包装之: ......

ruby来枚举csdn未注册的用户名

require 'open-uri'
$NAME_CHARS= (?a..?z).to_a+(?0..?9).to_a
def is_name_used(name)
str=open('http://passport.csdn.net/UserExist.aspx?UserName='+name)
str=str.read
#str=str.encode('GBK','utf-8')
return true if str[/Red/]
end
def enum_names(len=2)
return if len<2
f=File.open(' ......

ruby随机在控制台显示字符串

require 'curses'
module Curses
def self.program
main_scr=init_screen
noecho
cbreak
curs_set(0)
main_scr.keypad=true
yield main_scr
end
end
Curses.program do |scr|
max_x=scr.maxx
max_y=scr.maxy
100.times do
scr.setpos(rand(max_y),rand(max_x))
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号