0

次のChildクラスがあるとします。

Child < AR
 belongs_to :parent
end

Parentクラスに関連付けられているもの:

Parent < AR
 has_many :children
end

のアクション/ビュー内にフォームを作成してChildrenController、ユーザーが新しいものを作成し、何も割り当てられていない場合はChild新しいものを作成できるようにしたいと思います(アプリケーション)。ParentParentsController

new.haml.html ビューに単純なフォームを作成しました。

= simple_form @child do |c|
  c.input :field_for_child
  c.association :parent do |p|
    p.input :field_for_parent

結果は、次のような params ハッシュです。"child" => { "field_for_child" => "value1", "parent" => { "field_for_parent: => "value2" } }

「子」と「親」をできるだけ少ない行に保存するにはどうすればよいですか?

4

2 に答える 2

0
@child.parent_id = (params[:parent][:field_for_parent]) || Parent.create(...).id

それは私の経験に基づいた推測です...「(...)」は新しい親の引数になります

于 2011-03-28T14:00:35.927 に答える
0

あなたのモデルであなたが書く

class Child < AR
  belongs_to :parent
  accepts_nested_attributes_for :parent
end

次に、コントローラー内で、指定された属性を使用して子を保存できます。

于 2011-03-28T14:01:10.430 に答える