我已经设置了一个简单的示例应用程序,它使用设计进行用户身份验证 .
当我在登录时选择rember me复选框时,我在控制台中获得以下内容:
由Devise处理:: SessionsController #create as HTML参数:{“commit”=>“登录”,“authenticity_token”=>“Vm 2aWEmCRnnjdXAOpXdI5dGChUKlEcmfGNXNoGUkwc =”,“utf8”=>“Γ£ô”,“user”= > {“remember_me”=>“1”,“password”=>“[FILTERED]”,“email”=>“test@example.com”}}←[1m←[35mUser Load(1.0ms)←[0m SELECT“users” . * FROM“users”WHERE“users” . “email”=“test@example.com”LIMIT 1←[1m←[36mAREL(1.0ms)←[0m←[1mUPDATE“users”SET“last_sign_in_at “='2011-10-06 21:36:46.439511',”updated_at“='2011-10-06 21:43:59.298269',”sign_in_coun t“= 15,”current_sign_in_at“='2011-10-06 21 :43:59.297269'WHERE“users” . “id”= 1←[0m
我的帖子控制器中有以下内容:
before_filter :authenticate_user!
但是,当我关闭浏览器并再次打开它时,我被迫再次登录,然后才能查看帖子 . 似乎没有存储cookie . 我在firefox中为我的页面找到了以下cookie:
Cookie名称:remember_user_token到期:会话结束时
这是应该存储的cookie,并在将来的某个日期到期,而是在会话结束时到期吗?有人可以验证吗?
我已经尝试在devise.rb中评论和取消注释 config.remember_for = 2.weeks 到不同的设置,似乎没有什么可以解决问题 .
我的User.rb文件如下所示:
class User