0

我的路线.rb

   resources :users do
      resources :tags, on: :collection
      get :some_page, on: :collection
    end

和耙路线

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 个控制器:UsersControllerUsersTagsController.

我希望标签的路线是:

users/tags(.:format) --- users_tags#index
users/tags(.:format) --- users_tags#create
users/tags/new(.:format) --- users_tags#new
//............

为什么它们看起来不像这样,我该如何解决?

4

2 回答 2

1

我想这是因为:on只适用于单条路线。试试这个:

resources :users do
  collection do
    resources :tags
  end
end
于 2013-06-12T15:17:14.147 回答
0

你应该命名你的控制器Users::TagsController 然后在路由中:

namespace :users do
  resources :tags
end
于 2013-06-12T15:13:07.107 回答