2012-03-20 4 views
1

(つまり、オブジェクトが別のモデルに属し作成/編集されている)、次はうまくいくがないオブジェクトのコレクション用のフォームの作成:ルビー - 親より一般的な状況下

モデル

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>は2012年1月1日のものから選択*データベースからの照会...)物事のコレクションを編集する必要が考えることなく、彼らが所属する人のためのアトリオン(ある人に属していない人もいる)。

マイfields_forは/ /このようになるはずですが、(私はからフォームを構築するために何のオブジェクトを持っていないとして)私はこの前にそれを設定するかどうかはわかりません

... 
[email protected] do |thing| 
    =f.fields_for :thing, thing do |thing_fields| 
    =thing_form.description 

私が作ることができれば「ダミー」の人物を選択して物事の配列をロードして保存し、実際にはダミーを保存せずに、それはうまくいくでしょう...しかしどうですか? :)

答えて

1

私はユーザーのカテゴリについて同じ問題があります。以下の私の解決策を見てください。

- Category.all.each do |c| 
    = check_box_tag "user[category_ids][]", c.id, @user.categories.include?(c), :id => "user_category_ids_#{c.id}" 
+0

コレクションの保存/更新をどのように処理しますか? –

+0

モデルのattr_accessible "category_ids"とコントローラの@ user.update_attributes params [:user] – gayavat