我正在使用Simple Form构建一个表单,我必须手动循环一组记录,这些记录是HABTM关系的候选者。我必须进行手动循环,因为我需要在表格中呈现有关记录的其他信息,因此我不能使用简单表格collection_check_boxes
。
型号:
class Foo < ActiveRecord::Base
has_and_belongs_to_many :bars
end
class Bar < ActiveRecord::Base
has_and_belongs_to_many :foos
end
目前为止(HAML):
= f.simple_for_form @foo do |f|
%table
- @bars.each do |bar|
%tr
%td
# Line of interest:
= f.input :bar_ids, as: :boolean, label: bar.name
%td
= bar.additional_information
如何告诉简单表单f.input :bar_ids
是数组的一部分,以便命名字段foo[bar_ids][]
并指定值bar.id
?
答案 0 :(得分:0)
归功于this post from 2012,这是相当简单的。
= f.simple_for_form @foo do |f|
%table
= f.collection_check_boxes :bars, @bars, :id, :name do |builder|
%tr
%td
= builder.check_box
= builder.label
%td
= builder.object.additional_information