model里的代码
class MUser < ActiveRecord::Base
attr_accessor :user_pw
attr_accessible :user_cd, :user_pw
validates_uniqueness_of :user_cd
validates_presence_of :user_cd, :user_pw
def before_create
self.hashed_user_pw = MUser.hash_user_pw(self.user_pw)
end
def after_create
@user_pw = nil
end
def self.hash_user_pw(user_pw)
Digest::SHA1.hexdigest(user_pw)
end
def self.login(user_cd, user_pw)
hashed_user_pw = hash_user_pw(user_pw || "")
find(:first,
:conditions => ["user_cd = ? and user_pw = ?",
user_cd, hashed_user_pw])
end
def try_to_login
MUser.login(self.user_cd, self.user_pw)
end
end
controller里的代码
class LoginController < ApplicationController
def login
if request.get?
session[:user_id] = nil
@user = MUser.new
else
@user = MUser.new(params[:muser])
logged_in_muser = @user.try_to_login
if logged_in_muser
session[:user_id] = logged_in_muser.id
redirect_to(:action => "index")
else
flash[:notice] = "Invalid user/password combination"
end
end
end
def add_user
end
def index
@time = Time.now
end
end
view里的代码
<% form_tag({:action => 'login'}) do -%>
<%= error_messages_for 'muser' %>
用户名: | <%= text_field("muser", "user_cd") %> |
密 码: | <%= password_field("muser", "user_pw") %> |
<%end -%>
现在是将验证信息无法显示到页面上,帮我看下是哪里出了问题~ 万分感谢!