1
0
Fork 0
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:
Tobias Lütke 2007-11-29 22:25:42 +00:00
parent 1d32cec17d
commit a25b2e116c

View file

@ -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" }