我在当前任务中使用Active Record Transactions
。我能够以下面提到的两种方式完成我的工作。但我不清楚是否有任何差异,在transaction
和instance
上调用class
方法。
我已经浏览过Rails API,但没有发现任何差异。
transaction
方法的两个用法之间有什么区别?
Account.transaction do
balance.save!
account.save!
end
balance.transaction do
balance.save!
account.save!
end
提前致谢!
答案 0 :(得分:4)
没有区别,实例方法只是将执行委托给类方法。这是代码:
def transaction(options = {}, &block)
self.class.transaction(options, &block)
end