From 37d5c149ba3ae8cfc2cbde0ad24f9181ebe18c89 Mon Sep 17 00:00:00 2001 From: Andrey Morskov Date: Mon, 15 Jul 2024 17:03:35 +0300 Subject: [PATCH] Wrap account update in transaction (#985) --- app/controllers/accounts_controller.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/controllers/accounts_controller.rb b/app/controllers/accounts_controller.rb index 6371c4db..e703dca4 100644 --- a/app/controllers/accounts_controller.rb +++ b/app/controllers/accounts_controller.rb @@ -40,8 +40,10 @@ class AccountsController < ApplicationController end def update - @account.update! account_params.except(:accountable_type, :balance) - @account.update_balance!(account_params[:balance]) if account_params[:balance] + Account.transaction do + @account.update! account_params.except(:accountable_type, :balance) + @account.update_balance!(account_params[:balance]) if account_params[:balance] + end @account.sync_later redirect_back_or_to account_path(@account), notice: t(".success") end