我试图根据我在下拉菜单中选择的内容传递参数。出于某种原因,无论我在下拉菜单中选择什么,发送的唯一参数是“bag”=> {“id”=>“1”}}
这是我的观看代码(@bags = current_user.bags)
<%= form_tag(update_default_bag_path, :method => :put) do %>
<div class="field">
<%= collection_select :bag, :id, @bags, :id, :name, {} %>
</div>
...
<% end %>
无论我在下拉列表中选择什么,它总是只传递current_user的第一个包作为params [:bag] [:id]。关于为什么发布的params没有改变以及如何解决这个问题的任何想法?
答案 0 :(得分:0)
发生这种情况的主要原因是因为代码中出现了两次。在选择之前,我试图改变。所以一定要检查你的代码(使用inspect元素)来搜索“bag [id]”,并确保它不会出现在同一页面的其他地方!