ruby-on-rails - ruby 如何在 Rails 3中实现记住我的功能在登录到 Rails 3应用程序后使用注销选项设计?

  显示原文与译文双语对照的内容

sessions_controller.rb

def创建用户= User.find_by_email(params [:email] )

如果用户 && user.authenticate(params [:password] ),则为 params [:remember_me ]


 cookies.permanent[:auth_token] = user.auth_token


else


 cookies[:auth_token] = user.auth_token


end


redirect_to root_url, :notice =>"Logged in!"



其他 flash.now.alert ="无效的电子邮件或者密码"渲染"新建"结束端

def cookies.delete(:auth_token) redirect_to root_url,: 注意=>"已经注销" !

结尾

application_controller.rb

def current_user @current_user ||=用户,find_by_auth_token ( Cookies [:auth_token] ) 如果 Cookies [:auth_token ] !

结尾

user.rb

def generate_token(column) 开始自 [column] = SecureRandom.urlsafe_base64 结束而 User.exists? ( 列=> 自 [column] ) 结束

等着。我跟踪了你的记忆。

时间: 原作者:

配置路由


devise_for :users, path:"auth", path_names: { sign_in: 'login', sign_out: 'logout', password: 'secret', confirmation: 'verification', unlock: 'unblock', registration: 'register', sign_up: 'cmon_let_me_in' }



重新启动服务器。

原作者:
...