Module: ActiveRecord::BatchTouchingAbstractAdapter
- Included in:
- ConnectionAdapters::AbstractAdapter
- Defined in:
- lib/activerecord/batch_touching.rb
Instance Method Summary collapse
-
#transaction(requires_new: nil, isolation: nil, joinable: true, &block) ⇒ Object
Batches up
touchcalls for the duration of a transaction.
Instance Method Details
#transaction(requires_new: nil, isolation: nil, joinable: true, &block) ⇒ Object
Batches up touch calls for the duration of a transaction. after_touch callbacks are also delayed until the transaction is committed.
Examples
# Touches Person.first and Person.last in a single database round-trip.
Person.transaction do
Person.first.touch
Person.last.touch
end
# Touches Person.first once, not twice, right before the transaction is committed.
Person.transaction do
Person.first.touch
Person.first.touch
end
24 25 26 27 28 |
# File 'lib/activerecord/batch_touching.rb', line 24 def transaction(requires_new: nil, isolation: nil, joinable: true, &block) super(requires_new: requires_new, isolation: isolation, joinable: joinable) do BatchTouching.start(requires_new: requires_new, &block) end end |