在我的项目中使用 Devise Gem,只有当用户使用令牌登录时,是否有人知道如何将用户重定向到特定的 url?
问问题
154 次
2 回答
1
您可以通过创建自己的 SessionsController 来做到这一点,您可以在 git上找到它
像这样:
# POST /resource/sign_in
class SessionsController < 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)
#here you can enter your specific token code
# I guess you would do it with something like:
# if session[:token] = XYZ
# respond with ...
# else
# respond_with resource, :location => after_sign_in_path_for(resource)
# end
end
end
要使用此控制器,您还必须更改您的config/routes.rb
devise_for :users, :controllers => {:sessions => "sessions"}
希望它可以帮助你:)
于 2012-10-23T16:04:44.813 回答
0
如果我的问题是正确的,那么您问的是如何在他/她登录后重定向用户。
所以我在我的项目中尝试过这个
这是代码
def after_sign_in_path_for(resource)
# Use the route you want here (i have given the url like this: '/show')
end
希望我能理解问题的正确含义。!!:)
于 2012-10-23T17:54:08.050 回答