Select 多个使用 Rails `#select` 表单助手

Select multiple using Rails `#select` form helper

我有一段相当简单(看起来)的代码来创建多选元素:

<%= form_for @post do |f| %>  
  #stuff

  <%= fields_for :tags |tag_fields| %>
    <%= tag_fields.label :select_tags %>
    <%= tag_fields.select :tags, Tag.all, multiple: true %>
  <% end %>
<% end %>

出于某种原因,当它呈现页面时,multiple: true 部分未被解析,表单仅呈现为通用下拉列表,只有一个选项可选。我错过了什么?

(Rails 相关情况下版本为 5.0.0)

select 助手的签名是:

select(method, choices = nil, options = {}, html_options = {}, &block)

multiple 是一个 HTML 选项,因此您应该使用:

<%= tag_fields.select :tags, Tag.all, {}, multiple: true %>