1
has_one
の別のモデル(reuse_request)との関係でネストされた属性(allow_destroy
を含む)を受け入れるモデル(コンテナ)があります。コンテナモデルにbefore_validation
というコールバックがあります。このコールバックは、reuse_requestが同じ更新で破棄されようとしている場合には実行したくありません。Rails 4ネストされた属性_destroyフラグがモデル内から設定されているかどうかをチェックする方法
_destroy
属性がコンテナモデルbefore_validation
コールバック内から渡されたかどうかを確認する方法はありますか?
#container.rb
before_validation :set_code
has_one :reuse_request_as_previous, class_name: 'ReuseRequest', foreign_key: 'previous_container_id', dependent: :destroy, inverse_of: :previous_container
accepts_nested_attributes_for :reuse_request_as_new, :allow_destroy => true
def set_code
if reuse_request_as_new && reuse_request_as_new.previous_container
self.code = reuse_request_as_new.previous_container.code
end
end
ありがとうございます!私はそのことを忘れてしまった。 –