首页 > 解决方案 > 控制器作为根

问题描述

我想要达到的目标

我有一个名为“search”的控制器,我希望它作为我的应用程序的根。因此,我不需要输入www.mydomain.com/search/32来获取 id 32 并www.mydomain.com/search获取我的登录页面,而是希望 url 是www.mydomain.com/32and www.mydomain.com

到目前为止我所拥有的

通过添加get ':id' => 'search#show', :as => :root我设法实现www.mydomain.com/32,但是我不能添加root 'search#index',因为我不能有两个根路由。

显然有一种正确的方法可以做到这一点,因此感谢您的帮助。

标签: ruby-on-rails

解决方案


好吧,你可以这样做

get ':id' => 'search#show'
root to: 'search#index'

如果您as: "root"从节目中删除它,它将起作用。这很糟糕,因为您不能两次使用相同的前缀。如果您需要前缀,只需将其重命名为不同的单词。


推荐阅读