问题描述
|
我的控制器具有操作步骤2,可以按选定的类别收集所有设备。我的step2.html.erb看起来像:
<% form_for compare_comparision_path,:url => {:action => \'comparision\'} do |f| %>
<%= f.collection_select(:device,@devices,:id,:name,options ={:prompt => \"Select\"},:class=>\'device\') %>
</br>
<%= f.collection_select(:device,:class=>\'device\') %>
<%= f.submit \'ok\' %>
<% end %>
我想要您可以选择2个设备并将其发送到比较操作中的某个数组或变量。
谢谢
解决方法
您可以这样做:
<% form_for compare_comparision_path,:url => {:action => \'comparision\'} do |f| %>
<%= f.collection_select(\'device[]\',@devices,:id,:name,options ={:prompt => \"Select\"},:class=>\'device\') %>
</br>
<%= f.collection_select(\'device[]\',:class=>\'device\') %>
<%= f.submit \'ok\' %>
<% end %>
在控制器中,您将在params [:device]中拥有一个包含所选值的数组。
或者,您可以在我的示例中将\'device [] \'替换为每个选择框的唯一名称(例如\'devise1 \'和\'device2 \'。
然后,您可以通过访问params [:device1]和params [:device2]在控制器中获取选定的值