2012-09-23 28 views
10

Estoy utilizando recursos anidados, sin embargo, me encuentro con nombres de controlador que deberían ser más descriptivos.Uso de recursos con nombres de controlador personalizados

Por ejemplo Tengo un controlador de ProductsController y ImagesController

resources :products do 
    resources :images 
end 

Esto funciona bien, pero más tarde puede ser que necesite utilizar el ImageController para otra cosa que imágenes de productos, por lo tanto, debe ser nombrado ProductsImagesController.

Pero, ¿cómo puedo especificar el nombre del controlador de resources() sin caer de nuevo a algo feo como:

match 'products/images' => 'products_images#index' 
match 'products/images/new' => 'products_images#new' 

Respuesta

18
resources :products do 
    resources :images, :controller => "products_images" 
end 
+0

Estoy teniendo un problema con esto en los carriles 4? recursos: análisis,: controller => '/ admin/portal/API/Analytics hacer recogida hacer get: products_by_user_id get: products_by_stylist final final – James

0

Viniendo de un fondo de Zend Framework, creo que busca una estructura modular. Raíles parece ofrecer esto, llamado 'espacios de nombre':

namespace :admin do 
    resources :posts, :comments 
end 

que crea rutas de administración :: PostsController y administración :: CommentsController. En su caso, usted tendría Products :: ImagesController.

http://guides.rubyonrails.org/routing.html#controller-namespaces-and-routing

supe por esta otra respuesta aceptada: zend modules like in rails

Cuestiones relacionadas