我如何在自定义会话控制器上确定用户是第一次登录,我希望能够创建会话并重定向到welcome#index
(如果是第一次),否则它将重定向到root_url
。
我的代码是跟随
class MysessionsController < Devise::SessionsController
def create
self.resource = warden.authenticate!(auth_options)
set_flash_message(:notice, :signed_in) if is_navigational_format?
sign_in(resource_name, resource)
respond_with resource, :location => after_sign_in_path_for(resource)
end
protected
def after_sign_up_path_for(resource)
"http://google.com"
end
end
我知道我需要将after_sign_up_path_for(resource)
自定义为我想要的,但我找不到如何确定用户之前是否已使用design 登录
您应该能够使用:sign_in_count
列执行此操作。如果该值为0,则表示用户在之前没有登录
以为例
redirect_to ((current_user.sign_in_count == 0) ? path1 : path2 )