如何清理使用“模块”的资源路由

时间:2014-07-26 16:41:53

标签: ruby-on-rails ruby ruby-on-rails-4 namespaces routes

我目前将我的应用程序分为两个单独的命名空间adminpublic

虽然我的所有公共控制器都在public模块中,但我不希望路由包含命名空间,所以我的资源看起来像这样:

# config/routes.rb

resources :galleries, only: [:index, :show], module: :public do
  resources :photos, only: [:show], module: :public
end
resources :pages, only: :show, module: :public
resources :tags, only: [:show, :index], module: :public

在每个资源上使用module: :public让我烦恼。我该如何干这个?

1 个答案:

答案 0 :(得分:3)

这就是scope方法的用途(它不仅适用于模块,您还可以将它用于控制器,命名空间等...)。路线指南中给出的示例是

scope module: 'admin' do
  resources :posts, :comments
end