[英]How can I have a multiple grouped select with simple_form?
默认情况下,由于具有has_many关系,这给了我多重选择:
<%= f.association :tags %>
但是,我想根据类别对标签进行分组。 但是,当我这样做时,我的选择将变成仅允许一个选择的普通选择。 换句话说,输入上的“ multiple”属性消失了。
<%= f.association :tags, as: :grouped_select, collection: TagGroup.all, group_method: :tags %>
我尝试了不同的建议,例如添加html: {multiple: "multiple"}
或只是multiple: true
,但都没有任何效果。
我想念什么吗? 我没有理由在这种情况下选择不能为倍数,因为所有分组的选择应该做的就是添加optgroup
标签。
这是我没有进行分组选择的标签:
<select multiple="multiple" class="select optional" name="news_story[tag_ids][]" id="news_story_tag_ids">
并通过分组选择:
<select class="grouped_select optional" name="news_story[tag_ids]" id="news_story_tag_ids">
它似乎也弄乱了name属性,尽管我还没有测试过是否会带来问题。
编辑:我会为grouped_collection_select
帮助程序,但不会提供用于添加属性的选项哈希。 http://apidock.com/rails/v4.2.1/ActionView/Helpers/FormOptionsHelper/grouped_collection_select
我自己解决了。
这产生了正确的输出:
<%= f.association :tags, as: :grouped_select, collection: TagGroup.all, group_method: :tags, input_html: { :multiple => true } %>
关键部分是:
input_html: { :multiple => true }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.