【发布时间】:2018-10-12 09:44:31
【问题描述】:
我不想使用save! 方法,悲观锁(self.lock!)可以使用update_all 方法吗?
lock! 使用save! 方法。
Account.transaction do
self.lock!
account1 = Account.find(...)
account1.balance -= 100
account1.save!
end
lock! 使用update_all 方法。
Account.transaction do
self.lock!
attributes["balance"] = recalculate_balance
Account.where(:id => self.id).update_all(attributes)
end
Rails::VERSION::STRING => "3.2.22.4"
【问题讨论】:
-
rails 3 还是 4?
-
@SergioTulentsev
ruby -v ruby 2.3.7p456 (2018-03-28 revision 63024) [x86_64-linux] -
这不是我问的。
-
@SergioTulentsev 对不起我的错误。
Rails::VERSION::STRING => "3.2.22.4"
标签: ruby-on-rails ruby ruby-on-rails-3 race-condition