1

刚刚从 Authlogic 迁移到 Devise,并且遇到了重定向问题。我有以下内容:

  root :to => "welcome#index"

  authenticated :user do
    root :to => "dashboard#show"
  end

但是,登录后,我最终进入了welcome#index,而不是我所期望的dashboard#show。

设计文档说:

在用户登录、确认帐户或更新密码后,Devise 将寻找一个范围内的根路径以进行重定向。示例:对于 :user 资源,如果存在,它将使用 user_root_path,否则将使用默认 root_path。

这只会加强我的期望。

4

1 回答 1

6
def after_sign_in_path_for(resource_or_scope)
     new_order_path 

end

在您的应用程序控制器中定义它。这将在登录后将您的用户路由到特定路径。

补充花絮:

如果您想在通过电子邮件确认后将用户路由到特定页面,请在您的应用程序控制器中使用它。

  def after_confirmation_path_for(resource_or_scope)

  end 

尝试这个:

resources :dashboard

authenticated :user do
  root :to => "dashboard#show"
end

确保

root :to => "path"

在上面的代码之后而不是下面。

于 2013-09-23T10:24:13.170 回答