0

我正在尝试在我的 ruby​​ on rails 应用程序中设置用户身份验证。我在 app/controllers/application_controller.rb 中有以下代码。当我尝试在设置之前引用 remember_token cookie 时,代码失败。我该如何解决?尝试使用 cookies.has_key(:remember_token) (见下文)失败,因为 cookies 不是哈希(我认为)。

  protect_from_forgery
include SessionsHelper
#before_filter :authenticate 

def authenticate
    @test={:email=>"dummy", :password=>"dummy"}
    @test=cookies.permanent.signed[:remember_token] if cookies.permanent.signed.has_key(:remember_token)==true

    if User.authenticate(@test[:email], @test[:password])[:allow]==false
        redirect_to :controller=>'sessions', :action=>'new'
    end

end
4

1 回答 1

0

你可以这样做:

@test=cookies.permanent.signed[:remember_token] unless cookies.permanent.signed[:remember_token].nil?
于 2012-08-25T00:12:12.763 回答