Rails 带有下拉列表的多个复选框
Rails Multiple Check Box with drop down list
我创建了一个关联模型来创建一个复选框列表,用户可以在其中使用 he/she 说的 select 种语言。我曾尝试同时使用 Chosen 和 Select2,但无法正常工作。问题可能是因为我使用 check_box_tag
这是我的代码;
<%= hidden_field_tag "user[language_ids][]", nil %>
<% Language.all.each do |language| %>
<%= check_box_tag "user[language_ids][]", language.id, @user.language_ids.include?(language.id), id: dom_id(language) %>
<%= label_tag dom_id(language), language.name %> </br>
<% end %>
我观看了 Railscast Habtm 视频来创建它。这很好用,但我想让它对用户友好。谢谢
您需要呈现 <select>
标记而不是复选框:
form_for @user do |f|
f.select_tag "language_ids", options_from_collection_for_select(Language.all, "id", "name")
然后你可以在 DOM 元素上调用 $(..).select2()
我创建了一个关联模型来创建一个复选框列表,用户可以在其中使用 he/she 说的 select 种语言。我曾尝试同时使用 Chosen 和 Select2,但无法正常工作。问题可能是因为我使用 check_box_tag
这是我的代码;
<%= hidden_field_tag "user[language_ids][]", nil %>
<% Language.all.each do |language| %>
<%= check_box_tag "user[language_ids][]", language.id, @user.language_ids.include?(language.id), id: dom_id(language) %>
<%= label_tag dom_id(language), language.name %> </br>
<% end %>
我观看了 Railscast Habtm 视频来创建它。这很好用,但我想让它对用户友好。谢谢
您需要呈现 <select>
标记而不是复选框:
form_for @user do |f|
f.select_tag "language_ids", options_from_collection_for_select(Language.all, "id", "name")
然后你可以在 DOM 元素上调用 $(..).select2()