在同一下拉列表中选择多个项目

时间:2016-06-23 23:37:08

标签: ruby-on-rails erb

以下是相关视图的一部分。我尝试使用multiple: true选项执行此操作,但是当选择一个项目而另一个项目时,该复选框仅显示我选择的最后一个项目。

  <%= f.fields_for :event_artists do |fea| %>
    <%= fea.select(:artist_id, options_from_collection_for_select(Artist.all, "id", "name"), multiple: true) %>
  <% end %>

2 个答案:

答案 0 :(得分:0)

您可以添加:input_html =&gt; {:size =&gt; 10}所以看起来像 -

<%= f.fields_for :event_artists do |fea| %>
    <%= fea.select(:artist_id, options_from_collection_for_select(Artist.all, "id", "name"), multiple: true,  :input_html => {:size => 10 }) %>
  

答案 1 :(得分:0)

如果要在下拉列表中显示已选择的值,则需要传递数组。

<%= f.fields_for :event_artists do |fea| %>
  <%= fea.select(:artist_id, 
                 options_from_collection_for_select(Artist.all, "id", "name", [1,2,3]), 
                 multiple: true) %>
<% end %>

请务必使用您的艺术家值更改数组[1,2,3,4],例如@event_artist.artist_ids