ruby中的collection_select不允许多选

时间:2015-10-09 16:04:26

标签: ruby-on-rails ruby

我正在尝试在Rails中使用多选下拉列表。代码是:

<div class="field">
<%= f.label :tag_id %><br>
<td><%= f.collection_select(:tag_id, Tag.all, :id, :name, {:multiple => true})%></td>

我也试过

<td><%= f.collection_select(:tag_id, Tag.all, :id, :name, :multiple true)%>

我认为我应该能够按住shift或ctrl并点击多个项目以选择多个项目

我怀疑问题可能出在链接到Tags模型的文档表的架构中。 。

  t.integer  "tag_id"

文档模型有

class Document < ActiveRecord::Base
 . . .
   belongs_to :tag
  . . . 
end

并且标记模型具有has_many_documents

  1. multi实际上是否适用于f.collection_select
  2. 我应该使用'belongs_to:tag?
  3. 以外的其他内容吗?

1 个答案:

答案 0 :(得分:1)

以下应该有效

 df.drop_duplicates('A') 

您应该将其作为最后一个参数传递(即<%= f.collection_select(:tag_id, Tag.all, :id, :name, {}, {:multiple=> true})%> ),但目前您正在html_options = {}传递它。