invoice
多くの新しい を作成するためのフォームがありitems
ます。
class Invoice < ActiveRecord::Base
attr_accessible :project_id, :number, :date, :recipient, :items_attributes
accepts_nested_attributes_for :items
end
newinvoice
と含むのセットをインスタンス化するとき、それらが保存される前であっても、それらが属するについて何かを知っitems
てもらいたいので、モデルで次のようなことを行うことができます:items
invoice
Item
class Item < ActiveRecord::Base
belongs_to :invoice
after_initialize :set_hourly_rate
private
def set_hourly_rate
if new_record?
self.price ||= invoice.project.hourly_rate
end
end
end
現在、インスタンス化中に子 ( item
) が親 ( ) について何も知らないため、私のコードは失敗します。(したがって、ネストされた)をinvoice
保存した後でのみ、すべてがうまくいきます。しかし、保存する前であっても、新しいアイテムごとにデフォルト値を設定したいと考えています。invoice
items
これはどのように行うことができますか?
助けてくれてありがとう。