我的routes.rb
resources :users do
resources :tags, on: :collection
get :some_page, on: :collection
end
和rake路线
users/:user_id/tags(.:format) --- tags#index
users/:user_id/tags(.:format) --- tags#create
users/:user_id/tags/new(.:format) --- tags#new
//......
users/some_page(.:format) --- users#some_page
并且有2个控制器:UsersController
和UsersTagsController
。
我希望标签的路线为:
users/tags(.:format) --- users_tags#index
users/tags(.:format) --- users_tags#create
users/tags/new(.:format) --- users_tags#new
//............
为什么他们看起来不像这样,我该如何解决这个问题?
答案 0 :(得分:1)
我想这是因为:on
仅适用于单一路线。试试这个:
resources :users do
collection do
resources :tags
end
end
答案 1 :(得分:0)
您应该为控制器命名Users::TagsController
然后在路线中:
namespace :users do
resources :tags
end