在我的本地计算机上,当我在http://subdomain.myapp.dev(使用Pow服务器)进行身份验证时,我已正确地重定向到索引页面。
登录到生产域http://subdomain.myapp.com(在Heroku上托管)时,我也能够正确地进行身份验证;但是,Heroku没有重定向到索引页面。提交必要的凭据后,我收到“已成功登录”通知,但仍保留在登录页面上。
rake routes
和heroku run rake routes
返回相同的路由方案。我还列出了下面的routes.rb文件的内容
Example::Application.routes.draw do
devise_scope :user do
authenticated :user do
root :to => 'admin/servers#index'
end
unauthenticated :user do
root :to => 'devise/sessions#new'
end
end
resources :server_imports
resources :servers
devise_for :users
ActiveAdmin.routes(self)
end
输入登录凭据后的日志如下:
2013-10-12T01:59:32.110046+00:00 app[web.1]: Started POST "/users/sign_in"
2013-10-12T01:59:32.529842+00:00 app[web.1]: Started GET "/"
这是heroku run rake routes
root GET / admin/servers#index
如上所述,成功验证后,我仍然会重新路由到登录页面。我很困惑为什么这个问题只在Heroku而不是在我的本地机器上体验
答案 0 :(得分:2)
为什么不这样做:
def after_sign_in_path_for(resource)
admin_servers_index_path
end