在更典型的情况下(即正在编辑/创建的对象属于另一个模型),以下内容将起作用:
模型
Person < AR:Base
has_many :things
end
Thing < AR:Base
belongs_to :person
end
HAML
=form_for @person do |f|
=f.fields_for :things do |thing_form|
=thing_form.description
但是我需要编辑一组东西(从数据库中查询..选择*来自created_at&gt; 2012-01-01的东西)而不考虑他们所属的人(有些甚至不属于人)。
我的fields_for / should /看起来像这样,但我不确定如何在此之前设置它(因为我没有对象来构建表单)
...
-@things.each do |thing|
=f.fields_for :thing, thing do |thing_fields|
=thing_form.description
如果我可以制作一个'虚拟'人并用我选择的东西加载东西数组,那么保存它而不实际保存假人,那会起作用......但是如何? :)
答案 0 :(得分:1)
我对用户类别有同样的问题。请参阅下面的解决方案。
- Category.all.each do |c|
= check_box_tag "user[category_ids][]", c.id, @user.categories.include?(c), :id => "user_category_ids_#{c.id}"