Closed5
Railsのトランザクションを理解する
ピン留めされたアイテム
トランザクションを使う目的
データベースの整合性を保つため。
一連の操作を「全て成功するか、全て失敗するか」のどちらかに保証できる。
2種のロールバック
- トランザクション内での例外が発生時にロールバックが発火
-
raise ActiveRecord::Rollback
を記述し、明示的に発生させる
!
が付いているメソッドは失敗したら例外をスローするため、
トランザクションを使う際は、save!
やdestroy!
を使用するべき。
ネステッドトランザクション
ネストしたトランザクションの、内部のロールバックは外部に影響しない。
このスクラップは2ヶ月前にクローズされました