更改URL而不更改资源名称

dec*_*lan 38 routing nested-resources ruby-on-rails-3

我正在为一个兔子农民建立一个网站(让我们假装).这个男人密切关注他的兔子,并希望他们都归类.所以我为他建了一个RabbitCategoriesController,并将这一行添加到我的routes.rb中

resources :rabbit_categories
Run Code Online (Sandbox Code Playgroud)

的URL被作为表示向上rabbit_categories,rabbit_categoriew/new

如果我希望网址看起来像rabits/categories rabits/categories/new怎么办?这不是嵌套资源,我只是想改变URL的外观.

当然,如果资源被称为"类别",我可以做到

namespace :rabbits do
  resources :categories
end
Run Code Online (Sandbox Code Playgroud)

有什么办法我可以写,但告诉它使用RabbitCategoriesController而不是Rabbits :: CategoriesController?

rub*_*ish 71

你试过这个,应该工作吗?

resources :rabbit_categories, :path => "rabbits/categories"
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅从外部进行Rails路由.