5

我需要一些有关嵌套控制器路由的帮助。我自己无法从 Rails 指南文档中弄清楚。
我在 rails 3.2 应用程序中有以下控制器:

/app/controllers/organizations_controller.rb (class OrganizationsController)
/app/controllers/organization/events_controller.rb (class Organization::EventsController)

然后,在 routes.rb

resources :organizations, path: 'org' do
  resources :events
    member do
      get 'confirm'
    end
  end
end

正在运行的rake routes节目(仅与我的问题相关的部分):

 organization_event  GET  /org/:organization_id/events/:id(.:format)  events#show

URL 可以,路由名称也可以,但是到“控制器/动作”的映射不正确。不像我想要的那样。应该是organization/events#show

我错过了什么?我怎样才能将这条路线指向正确的控制器。我选择将其放在events_controller文件organization夹中,因为我已经events_controller在控制器文件夹的根目录中放置了另一个,它们有不同的用途。
谢谢

4

1 回答 1

6
namespace :organization do
   resources :events 
      member do
        get "confirm"
      end
   end
end

更多信息在这里

编辑

对不起,没有正确理解你。

resources :organizations, path: 'org' do
  resources :events, :module => "organization"
    member do
      get 'confirm'
    end
  end
end

这符合您的需求吗?

于 2012-08-07T15:39:22.207 回答