我在rails 4中创建复选框表单时遇到问题。有两个问题,第一个是每个复选框旁边的问题,在表单的末尾,所有类别的ID和名称都打印出来在一个大清单中添加额外的丑陋格式。第二个问题是当我使用
时id: dom_id(category)
为每个字段分配唯一ID,所有选项都已预先选定。
<div class="field">
<%= hidden_field_tag "user[category_ids][]", nil %>
<%= UserCategory.all.each do |category| %>
<%= check_box_tag 'user[category_ids][]', category.id, , id: dom_id(category) %>
<%= label_tag dom_id(category), category.name %><br>
<% end %>
</div>
表单末尾的丑陋格式:
[#<Category id: 1, name: "school">, #<Category id: 2, name: "college">, #<Category id: 3, name: "university">, #<Category id: 4, name: "post-graduation">, #<Category id: 5, name: "doctorate">, #<Category id: 6, name: "master">, #<Category id: 7, name: "bachelor">, #<Category id: 8, name: "grad">, #<Category id: 9, name: "middle-school">, #<Category id: 10, name: "junior-school">, #<Category id: 11, name: "senior-school">]
帮助将不胜感激!
由于
答案 0 :(得分:0)
在=
循环开始时消除<%
中的UserCategory
。它应该是:
<% UserCategory.all.each do |category| %>
对于第二个问题,您需要将false
添加到check_box_tag
来电:
<%= check_box_tag 'user[category_ids][]', category.id, false, id: dom_id(category) %>