使用 Devise 管理用户 session /注册我需要在每次用户登录时以及在他被设计重定向到主页以进行连接之前执行特定任务(例如更新该特定用户的用户表中的某些字段)用户。
我是否必须覆盖设计 SessionsController,如果是,如何?
最佳答案
或者,您可以创建自己的 session Controller
class SessionsController < Devise::SessionsController
def new
super
end
def create
self.resource = warden.authenticate!(auth_options)
set_flash_message(:notice, :signed_in) if is_navigational_format?
sign_in(resource_name, resource)
if !session[:return_to].blank?
redirect_to session[:return_to]
session[:return_to] = nil
else
respond_with resource, :location => after_sign_in_path_for(resource)
end
end
end
而在
routes.rb
添加:devise_for :users, controllers: {sessions: "sessions"}
关于ruby-on-rails - Rails - 如何在用户登录时覆盖设计 SessionsController 以执行特定任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13836139/