我有兩個使用父控制器的嵌套資源。如何更改參數名稱,以便取代params[:parent_id]
和params[:id]
我得到params[:parent_id]
和params[:child_id]
?否則,無法確定我正在處理哪個孩子。Rails 3多個嵌套的路由相同的控制器
現在我正在映射每個孩子的路線match 'child/:child_id' => 'parent#show'
但這幾乎打破了DRY的所有規則,因爲我有大約5條這樣的路線(還有更多)。
這裏是我的路線的一個例子:
resources :parent do
resources :child1, :controller => :parent
resources :child2, :controller => :parent
end
這裏是我想做些什麼
resources :parent do
resources :child1, :controller => :parent, :key => :child1_id
resources :child2, :controller => :parent, :key => :child2_id
end
更新
我只是要重做路線所以父母成爲每個孩子的嵌套。之所以沒有這樣做,原因是前面的同事寫了他們不知道他在做什麼。
這個結果看起來類似:
resources :child1 do
resources :parent
end
resources :child2 do
resources :parent
end
請問您可以添加您的路線代碼和一些控制器代碼嗎? – Ant 2011-04-01 13:20:21
是否有一個特定的原因,你想只使用parent_controller而不是有child1_controller等? – Ant 2011-04-01 14:44:33