我有一个项目模型和一个没有关系的类别模型。在项目模型的表单中,我希望能够选择项目所属的类别(复选框)(可能有很多)。类别具有一个字符串标题和属于该标题的类别数组。
我有这个代码而不使用simple_form它列出了类别和复选框,就像一个魅力。我怎么用simple_form做到这一点?
<% @categories.each do |category| %>
<b><%= category.heading %></b><br />
<% category.categories.each do |subcategory| %>
<%= check_box_tag "project[categories][]", subcategory,@project.categories.include(subcategory) %><%=subcategory%><br />
<% end %><br />
<% end %>
我尝试更新的形式如下:
class Project
include Mongoid::Document
...
field :categories, type: Array
...
end
类别偶然也存储在Mongoid文档中,但没有项目关系。
class Category
include Mongoid::Document
field :heading, type: String
field :categories, type: Array # should probably be called subcategories...
end
答案 0 :(得分:1)
我不确定你想要什么,但你可以尝试这样的事情。如果你能澄清你在问什么,我会尝试给出更详细的答案。
<%= simple_form_for @document do |f| %>
# other form inputs...
<%= f.input :categories, collection: listOfCategoryNames, as: :check_boxes %>
# other form inputs...
<% end %>
其中listOfCategoryNames
是所有类别名称的字符串数组。