ネストされたすべてのオブジェクトの金額を合計した合計金額を更新するこのコールバックがあります。これは、新しい支払い項目を追加するときにうまく機能しています。
before_save :update_payment_total
def update_payment_total
self.amount_cents = self.payment_items.sum(:total_payout_cents)
end
before_save
問題は、このコールバックが呼び出された後に payment_items が削除されるため、支払いを編集して支払いアイテムを削除するときにトリガーされないことです。
代わりに after_save を使用しようとして、save または update_attributes を設定すると、stack level too deep
新しく保存された支払いアイテムのみに基づいてカウントを更新する方法はありますか?