使用资源自定义控制器名称(Using resources with custom controlle

2019-07-31 20:05发布

我使用嵌套的资源,但是我遇到控制器名称应该是更具描述。

比如我有一个控制器ProductsControllerImagesController

resources :products do
  resources :images
end

这工作得很好,但后来我可能需要使用ImageController比产品的图像等,因此应被命名为ProductsImagesController。

但是,我怎么可以指定控制器名称resources()没有回落到丑陋的东西,如:

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

Answer 1:

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


Answer 2:

从Zend框架背景的人,我认为你正在寻找一个模块化结构。 铁轨似乎提供了这家名为“命名空间”:

namespace :admin do
  resources :posts, :comments
end

这造成线路管理员:: PostsController和Admin :: CommentsController。 在你的情况,你将有产品:: ImagesController。

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

我从这个其他公认的答案发现: Zend的模块,如在轨



文章来源: Using resources with custom controller names