web-dev-qa-db-fra.com

changer l'URL sans changer le nom de la ressource

Je construis un site Web pour un éleveur de lapins (faisons semblant). Cet homme surveille de près ses lapins et veut qu'ils soient tous classés. Je lui ai donc construit un RabbitCategoriesController, et ajouté cette ligne à mes routes.rb

resources :rabbit_categories

Les URL s'affichent sous la forme rabbit_categories, rabbit_categoriew/new, etc.

Que faire si je veux que les URL ressemblent à rabits/categoriesrabits/categories/new au lieu? Ceci est pas une ressource imbriquée, je veux juste changer l'apparence des URL.

Bien sûr, si les ressources étaient appelées "catégories", je pourrais faire

namespace :rabbits do
  resources :categories
end

Est-il possible que je puisse écrire cela, mais lui dire d'utiliser le RabbitCategoriesController au lieu du Rabbits :: CategoriesController?

39
declan

avez-vous essayé cela, devrait fonctionner

resources :rabbit_categories, :path => "rabbits/categories"

Voir Rails Routing from Outside In pour plus de détails.

73
rubish