2009-08-05 154 views
0

這裏是路線:的form_for嵌套資源

map.resources :networks do |network| 
    network.resources :channels, :name_prefix => nil 
    end 

以下是我在爲我的形式。

<% form_for ([@network, @channel]) do |f| %> 
... 
<% end %> 

我得到,因爲form_for一個未定義的方法錯誤是試圖調用「network_channel_path」。發生此錯誤的原因是我的通道:name_prefixnil。如何在不完全寫出form_form的所有必要參數的情況下避免此問題?的

回答

1

而是採用:name_prefix => nil使用:shallow => true

這不會與你_paths

+0

使用這種方法會需要我返工我的一些看法,主要是我所有的路徑來電顯示networks/:network_id,而不是一塌糊塗,但我喜歡這個解決方案。謝謝! – mikeycgto 2009-08-05 15:57:39

+1

你仍然可以訪問params [:network_id] FYI – ErsatzRyan 2009-08-05 17:28:41