我有非常有趣的場景:Rails 3中嵌套路由
我指定了兩個控制器,一個爲全球事件和另一個另一曾經爲公司的具體事件。在路線,它被指定這樣的:
resources :companies do
resources :events
end
resources: events
運行rake路由我可以看到正在生成的路由:
events GET /events(.:format) events#index
company_events GET /companies/:company_id/events(.:format) events#index
兩個路徑似乎路由到相同的控制器(全球的).. 。 我有第二控制器根據控制器/公司,是這樣的:上面
class Companies::EventsController < ApplicationController
# stuff
end
它從不路線在控制器,無論我用company_evens_pat H(@company)。總是去另一個。 它應用於軌道2.3爲我工作,我目前使用的3.2
你確定你需要一個單獨的控制器,似乎要保持乾燥,你應該只在全局事件控制器的索引操作中拋出一個if params [:company_id]來僅顯示那些事件。 – 2012-03-01 05:35:05
這是根據您的路線按預期工作。都傳遞給EventsController和索引方法。如果您需要遵循不同的行爲,則可以從單個控制器執行此操作。 – 2012-03-01 05:41:53