Output Diary

プログラミング × 読書 のアウトプットを発信しています

【Rails】トランザクションとは

 
複数の処理をまとめて1つ大きな処理として扱う機能です。
 
 
処理の1つで例外が発生した時、
複数の処理を巻き戻すことができます。
 
 

トランザクションの使用イメージ

 
ATMに入金したのに出金されないぞー!
 
といったトラブルが発生したときに、
 
トランザクションが発動します。
 
トランザクション発動により、入金を取り消すことが出来ます。
 
 

transactionメソッドの基本的な書き方

 
ActiveRecord::Base.transaction do
# 例外が発生するかもしれない処理
end
# 例外が発生しなかった場合の処理
rescue => e
# 例外が発生した場合の処理
 
 
 

まとめ

 
複数の処理をまとめて1つ大きな処理として扱う機能です。
 
トランザクションを活用することで、
予期せぬバグを未然に防ぐことが出来ます。
 

f:id:kina_kq:20210314081245p:plain