Rails:ActiveRecord::Base.transaction 和 MyClass.transaction 有什么区别?

Mir*_*318 6 activerecord ruby-on-rails

我正在查看这里的文档http://api.rubyonrails.org/classes/ActiveRecord/Transactions/ClassMethods.html

它给出的一个例子是:

ActiveRecord::Base.transaction do
  david.withdrawal(100)
  mary.deposit(100)
end
Run Code Online (Sandbox Code Playgroud)

文档中的另一个示例是:

Account.transaction do
  balance.save!
  account.save!
end
Run Code Online (Sandbox Code Playgroud)

Base's 方法和Account's 方法有什么区别?

qua*_*zar 7

帐户模型继承自 ActiveRecord::Base,因此两者实际上是相同的方法。