mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Removed documentation for the removed rollback! method on transactions and mention ActiveRecord::Rollback [cody]
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8240 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
This commit is contained in:
parent
1d32cec17d
commit
a25b2e116c
1 changed files with 2 additions and 12 deletions
|
@ -30,17 +30,6 @@ module ActiveRecord
|
|||
# Exceptions will force a ROLLBACK that returns the database to the state before the transaction was begun. Be aware, though,
|
||||
# that the objects by default will _not_ have their instance data returned to their pre-transactional state.
|
||||
#
|
||||
# == Rolling back a transaction manually
|
||||
#
|
||||
# Instead of relying on exceptions to rollback your transactions, you can also do so manually from within the scope
|
||||
# of the transaction by accepting a yield parameter and calling rollback! on it. Example:
|
||||
#
|
||||
# transaction do |transaction|
|
||||
# david.withdrawal(100)
|
||||
# mary.deposit(100)
|
||||
# transaction.rollback! # rolls back the transaction that was otherwise going to be successful
|
||||
# end
|
||||
#
|
||||
# == Different ActiveRecord classes in a single transaction
|
||||
#
|
||||
# Though the transaction class method is called on some ActiveRecord class,
|
||||
|
@ -80,7 +69,8 @@ module ActiveRecord
|
|||
# == Exception handling
|
||||
#
|
||||
# Also have in mind that exceptions thrown within a transaction block will be propagated (after triggering the ROLLBACK), so you
|
||||
# should be ready to catch those in your application code.
|
||||
# should be ready to catch those in your application code. One exception is the ActiveRecord::Rollback exception, which will
|
||||
# trigger a ROLLBACK when raised, but not be re-raised by the transaction block.
|
||||
module ClassMethods
|
||||
def transaction(&block)
|
||||
previous_handler = trap('TERM') { raise TransactionError, "Transaction aborted" }
|
||||
|
|
Loading…
Reference in a new issue