默认值未设置为 Rails 多 select 形式

Defaults not set in Rails multiple-select form

在我的应用中,一篇文章可以有多个标签。创建文章时,我可以使用 multiple-select 下拉列表和 Rails Select2 gem.

向文章添加多个标签

问题是,当我编辑文章时,none 个标签被 select 编辑,用户必须重新 select 它们。

<%= form_for(@article) do |f| %>
  <%= f.select :tags, options_for_select(@tags.collect {|t| [ t.id, t.title] }),{:selected=>@article.tags}, :multiple => true, :id => "article_tags", :class => "form-control" %><br>
  <%= f.submit 'Update', :class => "btn" %><br>
<% end %>

<script>
    $(document).ready(function() {
      $("#article_tags").select2({multiple:true});
    });
</script>

有什么建议吗?

当我把它放在页面底部时,它最终起作用了:

<script>
  $(document).ready(function() {
    $("#tags").select2({multiple:true});
    $('select').select2().select2('val', 'tag one, tag two, tag three');
    $('select').select2();
  });
</script>