我试图从我的复选框中获取值,但是每当我使用 params[:chosen] 时,它似乎总是返回 nil。我错过了什么?参数是正确的方法吗?
这是我的观点:
<td><%= check_box_tag "chosen[#{i}]",i,true,:name => "chosen[]" %></td>
这确实会产生复选框,但我似乎永远无法从中获得价值。我需要在控制器中放一些东西吗?
谢谢
我试图从我的复选框中获取值,但是每当我使用 params[:chosen] 时,它似乎总是返回 nil。我错过了什么?参数是正确的方法吗?
这是我的观点:
<td><%= check_box_tag "chosen[#{i}]",i,true,:name => "chosen[]" %></td>
这确实会产生复选框,但我似乎永远无法从中获得价值。我需要在控制器中放一些东西吗?
谢谢
<%= f.check_box :hobby, {:multiple => "true"}, "hockeys", nil %>Hockey
<%= f.check_box :hobby, {:multiple => "true"}, "cricket", nil %>cricket
这将对您非常有帮助。
我认为您不需要 :name => "chosen[]"。第一个参数已用作名称。此外,Rails 指南建议始终使用带有 check_box_tag 的 label_tag
<td>
<%= label_tag :my_attribute, "Attribute Label" %>
<%= check_box_tag :my_attribute, my_model.my_attribute %>
</td>
然后控制器可以检查 params[:my_attribute]