0

で使用accepts_nested_attributes_forしてい:allow_destroy => trueます。

_destroyオブジェクトを削除すると、属性が としてマークされていることがわかりますがtrue、オブジェクトを でチェックすると、代わりにobject.destroyed?が取得されます。niltrue

理由はありますか?

4

1 に答える 1

0

ドキュメントから:

ここで、属性ハッシュに _destroy キーを追加すると、値が true に評価され、関連付けられたモデルが破棄されます。

member.avatar_attributes = { :id => '2', :_destroy => '1' } member.avatar.marked_for_destruction? # => 真

destroyed?オブジェクトが実際に破棄されているかどうかを確認するためにここにあります:

foo = Foo.first
foo.destroyed #=> false
foo.destroy
foo.destroyed? #=> true
于 2012-09-11T07:01:11.463 に答える