0
當我在鏈接點擊標誌應該檢查有效的用戶名和密碼,並顯示在頁面的一部分,這是我在顏色框的彈出我打電話標誌的消息,但我不能夠顯示錯誤信息。模型驗證錯誤消息都沒有得到顯示
這是我的LoginController:
def login
if request.post?
@user = User.new(params[:user])
user=User.authenticate(params[:username], params[:password])
if user.nil?
flash[:error] = 'Login unsuccessful'
redirect_to :back
else
flash[:notice] = 'Login successful'
session[:user] = user.id
redirect_to :controller=>'users', :action => 'show',:username=>user.username
end
end
end
User.rb:
def self.authenticate(username, pass)
user = find(:first, :conditions=>["username = ?", username])
return nil if user.nil?
return user if User.hash_password(pass) == user.password && username == user.username
nil
end
在我看來page_sign_in.html.erb
頁
<%= form_for @user, :url=>{:controller=>"logins",:action=>"login"},:remote=>true,:html=>{ :onSubmit => "return checkSignupValidation()",:id=>"signin_form", :multipart=>true} do |f| %>
@user
是給錯誤:undefined method
MODEL_NAME」的Nilclass`
日Thnx klump.wht我應該指定,而不是回到becoz我想,如果用戶登錄失敗,再次呈現相同的登錄彈出。 – sonalkumar 2012-04-20 11:37:57
是的,它是你使用的登錄方法?然後你可以嘗試像'controller:login,action:login'這樣的東西... – klump 2012-04-20 14:40:18