TOP > カテゴリ > Ruby・Ruby on Rails >

Railsでトランザクションを使用する

Ruby on Railsでトランザクションを使用する場合は「ActiveRecord::Base.transaction」を使用します。

次例ではquestionモデル(questionsテーブル)、answerモデル(answersテーブル)を保存しています。「save」ではなく「save!」ですので保存に失敗すると例外が発生します。

ActiveRecord::Base.transaction do

  question.save!
  answer.save!      
  
end

トランザクション内で例外が発生すると、自動的にロールバック。正常に実行されると自動的にコミットされます。





掲示板

ソフトウェア、ハードウェアのプログラミング用の掲示板を作成しました。質問やわからない事は@掲示板でユーザー同士で情報を共有して下さい。

関連記事



公開日:2019年10月12日
記事NO:02791