使用Deviate管理用户会话/注册,每次用户登录时,以及在Deviate将其重定向到已连接用户的主页之前,我都需要执行特定任务(例如,为该特定用户更新用户表中的某些字段).
我必须覆盖Desive SessionsController吗?如果是,如何覆盖?
使用Deviate管理用户会话/注册,每次用户登录时,以及在Deviate将其重定向到已连接用户的主页之前,我都需要执行特定任务(例如,为该特定用户更新用户表中的某些字段).
我必须覆盖Desive SessionsController吗?如果是,如何覆盖?
或者,您可以创建自己的会话控制器
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"}