Rails - 路径是路由到View但没有看到路径中的路径

时间:2017-05-01 19:46:13

标签: ruby-on-rails devise routes

我继承了一个rails应用程序,因此不确切知道某些事情是如何设置的。我的应用程序最初是使用注册表单设计的,但我已经删除了该功能。出于某种原因,当我转到localhost:3000 / users / sign_up时,它仍会加载该页面。我正在查看路线文件,而没有看到与之相关的任何内容。我相信他们使用设备的应用程序是否有我应该看的其他地方?我想将对users / sign_up的任何请求重定向到站点的根目录。

1 个答案:

答案 0 :(得分:0)

听起来您的应用正在使用默认的Devise路线。如果你去你的routes.rb文件,你应该看到这样一行:

devise_for :users

这意味着Devise会为您生成一堆默认路由。如果您在终端中键入rake routes,则会看到类似于以下内容的内容:

new_user_session GET    /users/sign_in(.:format)     devise/sessions#new

这个以及类似的其他用户路由是由Devise通过routes.rb文件中的devise_for :users生成的。

如果您想自定义Devise为您设置的默认路由,您可以在Devise文档here中找到一些有用的信息。他们为您提供了如何更改/ users / sign_in路由的示例:

devise_scope :user do
  get 'sign_in', to: 'devise/sessions#new'
end

只需将'devise/sessions#new'更改为指向您要使用的控制器操作,如果您希望用户从主页登录,请说'home#index'