Ruby on rails Rails-使关联复选框显示在下拉列表中,而不是数组中

Ruby on rails Rails-使关联复选框显示在下拉列表中,而不是数组中,ruby-on-rails,arrays,associations,simple-form,dropdown,Ruby On Rails,Arrays,Associations,Simple Form,Dropdown,我正在使用简单的宝石来呈现复选框。这是我的密码: <tr> <th>Authors</th> <td><%= f.association :authors, as: :check_boxes, label: false %></td> </tr> 作者 问题是我的收藏以如下方式显示在数组中: 如何将此复选框数组改为下拉格式?您尝试过吗 看起来像这样: <%= collection_sel

我正在使用简单的宝石来呈现复选框。这是我的密码:

<tr>
  <th>Authors</th>
    <td><%= f.association :authors, as: :check_boxes, label: false %></td>
</tr>

作者
问题是我的收藏以如下方式显示在数组中:

如何将此复选框数组改为下拉格式?

您尝试过吗

看起来像这样:

<%= collection_select(:author, :name, Author.all, :id, :name_with_initial, prompt: true) %>

希望有帮助,
干杯

找到了解决办法!我发现并使用了
item\u wrapper\u标记:
helper,这是我在
f.association
代码中使用的。这使我可以在一系列复选框周围加上一个div。然后我给了它一个类,这样我就可以使用CSS将这个div的样式设置为
内联块

<tr>
  <th>Authors</th>
    <td><%= f.association :authors, as: :check_boxes, item_wrapper_tag: :div, item_wrapper_class: "inline_block", label: false %></td>
</tr>

作者
这就产生了这个结果。内容现在位于垂直列表中,而不是数组中


我需要在CSS中多花点时间,将其包含在一个可滚动的框中,但总的来说,这个解决方案对我很有效。

从文档中,您可以将一个块传递到
f.association
(),这样您就可以通过复选框、标签和

传递一个块。如果你想要更复杂的东西(比如3列均匀分布的复选框+标签),你需要手动循环那些可能的作者。