我在设法实现以下方法时遇到了麻烦:我想将循环放在select field
的下面,并且只能选择子类别。
@categories = Category.where(ancestry: nil)
@subcategories = Category.where("ancestry is NOT NULL and name != ''")
<% @categories.each do |category| %>
<%= category.name %>
<% unless category.children.empty? %>
<% category.children.each do |subcategory| %>
<%= subcategory.name %>
<% end %>
<% end %>
<% end %>
我得到以下子类别:
<%= form.collection_select(:category_id, @ subcategories, :id, :name) %>
但是如何在选择字段中按顺序放置类别(不可选择)和子类别(可选择)?
答案 0 :(得分:1)
<%= form.grouped_collection_select :category_id, Category.roots.order(:name), :children, :name, :id, :name, {:include_blank => true}, {class: "", :multiple => true } %>