在Rails中使用没有父ID的嵌套资源

dav*_*cus 13 ruby ruby-on-rails nested-resources nested-routes

我有一类称为Imprintables嵌套资源Styles,Brands,Colors,和Sizes.我目前在我的路线文件中有这个:

resources :imprintables do
  resources :styles, :brands, :colors
  resources :sizes do
    collection do
      post 'update_size_order'
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

哪个产生这样的路线:

/imprintables/:imprintable_id/brands
/imprintables/:imprintable_id/colors
/imprintables/:imprintable_id/styles
/imprintables/:impritnable_id/sizes
Run Code Online (Sandbox Code Playgroud)

我不希望所有嵌套资源都绑定到1个特定的imprintable.我希望我的路线看起来像:

/imprintables/brands
/imprintables/styles
/imprintables/colors
/imprintables/sizes
Run Code Online (Sandbox Code Playgroud)

...等等.

什么是最好的方式来解决这个问题?

Mar*_*kac 28

resources :imprintables do
  collection do
    resources :styles, :brands, :colors
  end
end
Run Code Online (Sandbox Code Playgroud)