我的问题是,例如,我有产品,类别和产品类别。产品类别使产品具有多个类别成为可能
我想使用 select2 (http://ivaynberg.github.io/select2/) 使用 select2-rails gem (https://github.com/argerim/select2-rails) 来实现这一点
我已经知道如何关联模型,但我无法弄清楚如何实现 Select2 特定代码。
编辑:现在我发现我的问题与 select2 无关,所以我添加了此评论并更改了标题,希望它可以帮助其他人
现在我发现我的问题不是关于 select2,而是做多选。
_form.html.erb 中使其工作的代码是这样的:
<%= f.label :category_id %>
<%= f.collection_select :category_ids, Category.order(:name), :id, :name, {:selected => @product.category_ids, :include_blank => true}, {:class => 'col-xs-12 col-md-7 padding_15', :multiple => true} %>
我还在 models/product.rb 的attr_accessible
中包含了:category_ids
和 select2 特定的,我包含在一个.js文件中
$(document).ready(function() {
$('#product_category_ids').select2();
});
我包含这些链接,因为它们帮助了我,但请注意差异取决于Ruby/Rails版本。
- http://www.dzone.com/snippets/using-mutiple-collection
- http://www.alethe.com/brad/2009/10/multiple-select-list-in-rails/
只是为了让您知道,出乎意料的是,如果此collection_select是我表单的最后一行,则某些表单字段将被禁用,尽管源代码中没有任何说明。更改顺序 此问题不存在。
我也不知道为什么外观与其他字段略有不同(我使用的是 Bootstrap 3)