ben*_*ben 7 ruby-on-rails devise
在Devise中,我正在以这样的方式登录我的用户:
sign_in_and_redirect(:user, user)
Run Code Online (Sandbox Code Playgroud)
在默认登录页面中,有一个用户可以选择的复选框,以便他们在返回站点时不必再次登录.但是,当您使用该sign_in_and_redirect(:user, user)
行登录时,我无法确定如何将该参数设置为yes.有谁知道怎么样?谢谢阅读.
current_user.remember_me!
Run Code Online (Sandbox Code Playgroud)
https://github.com/plataformatec/devise/blob/master/lib/devise/models/rememberable.rb#L54
请注意,这仅更新remember_created_at
用户记录的值。但为了使其正常工作,还需要将验证令牌存储在 Devise cookie 中。要实现这两件事,请遵循 Dmytrii 的建议并使用remember_me <USER>
控制器方法:
include Devise::Controllers::Rememberable
...
remember_me <USER_OBJECT>
Run Code Online (Sandbox Code Playgroud)
小智 5
做了一些测试.向他人介绍调查结果.
假设用户对象具有在声明上定义的可记忆模块,最简单的解决方案devise
是在登录和重定向之前将remember_me设置为true:
@user.remember_me = true
sign_in_and_redirect(@user, :event => :authentication)
Run Code Online (Sandbox Code Playgroud)