1
我建立一個示例應用程序,允許用戶創建包含多個「單詞列表」,「字組」中又包含多個「自定義單詞」錯誤 - 沒有路由匹配
#Word groups, word lists, and custom words
resources :word_groups, shallow: true do
resources :word_lists, shallow: true do
resources :custom_words
end
end
我有關的集合路線 -
word_group_word_lists GET /word_groups/:word_group_id/word_lists(.:format) word_lists#index
POST /word_groups/:word_group_id/word_lists(.:format) word_lists#create
/word_groups/index.html.erb
<% if current_user.word_groups.any? %>
<ol class="word_groups">
<%= render @word_groups %>
</ol>
<% end %>
/word_groups/_word_group.html.erb
<li>
<span class="name panel-body"><%= word_group.name %></span>
<span class="name panel-body"><%= word_group.id %></span>
<span class="name panel-body"><%= link_to "Manage Lists", word_group_word_lists_path(word_group) %></span>
</li>
word_group.name和word_group.id都返回正確的值。
的word_group_word_lists_path錯誤了用 - 「錯誤 - 沒有路由匹配{:控制器=>」 word_lists 「:word_group_id =>#}」
我衷心感謝所有幫助您可以提供!
UPDATE -
我加了一個條件來檢查word_group並非零和not_new在我看來並解決它。
<% if !word_group.nil? && !word_group.new_record? %>
<li>
<span class="name panel-body"><%= word_group.name %></span>
<span class="name panel-body"><%= link_to "Manage Lists", word_group_word_lists_path(word_group) %></span>
</li>
<% end %>
謝謝@benjaminjosephw。我也嘗試過,並且我得到以下「無路由匹配{:controller =>」word_lists「,:word_group_id => nil}」 –
和'word_group.id'肯定返回一個整數? – benjaminjosephw
也,我知道這是顯而易見的,但值得檢查,因爲我看不出還有什麼可能是錯誤的 - 你重新啓動rails服務器? – benjaminjosephw