我是 Ruby on Rails 的新手,我想知道是否可以在 Rails 中创建单层路径名。
据我所知,你只能创建像
home/about
这样的路线。有没有办法只创建/about
?
我尝试使用
get '/test'
执行此操作,其中 test
有自己的控制器和视图中的单个 HTML 页面,但 Rails 抛出了一个名为:ArgumentError: Missing :controller key on routes definition, please check your routes.
的错误
这是否意味着我无法创建像
/about
这样的路径,但我必须创建像home/about
这样的路径?我认为以前没有人问过这个问题。
您只需告诉 Rails 您实际上要将请求分派到哪个控制器:
get '/test', to: 'foos#bar'
或者如果您想要一组路线:
scope controller: 'foos' do
get :bar
get :baz, action: 'something_else'
end
这些通常被称为非资源路由,您可以以任何您想要的方式嵌套它们。