【发布时间】:2016-05-25 04:39:50
【问题描述】:
我想将未经身份验证的用户重新路由到我的登录页面,假设我的路由现在是 http://localhost:3000/users/sign_in 又名 devise/sessions#new,默认情况下,设备将在未登录时编辑页面,因为这是内置的。但是任何自定义如果您没有登录,路由只会破坏应用程序,因为它不属于设计重新路由。如果未登录,如何将这些路由设置为重新路由?
直接从下面的设计中引用,我仍然不知道如何用我的路线实现这一点,代码应该是什么样的?
进入库
class CustomFailure < Devise::FailureApp
def redirect_url
new_user_session_url(:subdomain => 'secure')
end
# You need to override respond to eliminate recall
def respond
if http_auth?
http_auth
else
redirect
end
end
end
And add the following in config/initializers/devise.rb:
config.warden do |manager|
manager.failure_app = CustomFailure
end
进入初始化器
config.warden do |manager|
manager.failure_app = CustomFailure
end
【问题讨论】:
标签: ruby-on-rails devise