我无法让这个工作。我想要做的是有一个填充团队编号的下拉列表,然后根据用户选择的那个,它会将他们带到该团队的编辑页面。我可以让下拉列表正确填充,但我无法让它带我到正确的页面。当我以不同的方式对其进行测试时,它确实将我带到了正确的页面,所以我不认为这是一个路由错误。
有问题的代码:
<%= form_tag edit_corevalue_path(@corevalue), method: 'get' do %>
<%= collection_select(:corevalue, :corevalue_id, Corevalue.all, :id, :teamNumber, :prompt => "Select Team") %>
<%= submit_tag "Submit!", :name => nil , class: "btn btn-large btn-primary" %>
<% end %>
我收到错误:没有路线匹配 {:action=>"edit", :controller=>"corevalues", :id=>nil}
但是,如果我将其注释掉并使用以下命令对其进行测试:
<%= link_to "TEST", edit_corevalue_path(2) %>
然后它起作用并将我带到正确的页面。我相信错误是使用@corevalue 时它没有获得正确的id,但我不太确定如何修复它或正确的语法是什么。任何帮助是极大的赞赏。谢谢你。