刚刚从Authlogic迁移到Devise,并出现重定向问题。 我有以下内容:
root :to => "welcome#index"
authenticated :user do
root :to => "dashboard#show"
end
但是,在登录之后,我最终会使用welcome #index,而不是我希望的仪表板#show。
devise文档说:
登录用户后,确认帐户或更新帐户 密码,Devise将寻找重定向的作用域根路径。 示例:对于:user资源,如果是,则使用user_root_path 存在,否则将使用默认的root_path。
这只会增强我的期望。
答案 0 :(得分:6)
def after_sign_in_path_for(resource_or_scope)
new_order_path
end
在应用程序控制器中定义它。这将在sign_in之后将您的用户路由到特定路径。
额外的花絮:
如果您想在通过电子邮件确认后将用户路由到特定页面,请在应用程序控制器中使用此页面。
def after_confirmation_path_for(resource_or_scope)
end
试试这个:
resources :dashboard
authenticated :user do
root :to => "dashboard#show"
end
确保
root :to => "path"
在上面的代码之后而不是在下面。