Rails多个复选框,带下拉列表

时间:2015-08-29 19:51:09

标签: ruby-on-rails list checkbox drop-down-menu

我创建了一个关联模型来创建一个复选框列表,用户可以在其中选择他/她所说的语言。我曾尝试使用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视频来创建它。这只是工作正常,但我想使其用户友好。谢谢

1 个答案:

答案 0 :(得分:1)

您需要呈现<select>标记而不是复选框:

form_for @user do |f| 
  f.select_tag "language_ids", options_from_collection_for_select(Language.all, "id", "name")

然后你可以在那个DOM元素上调用$(..).select2()