Method: ActiveRecord::Transactions::ClassMethods#after_commit
- Defined in:
- lib/active_record/transactions.rb
#after_commit(*args, &block) ⇒ Object
This callback is called after a record has been created, updated, or destroyed.
You can specify that the callback should only be fired by a certain action with the :on option:
after_commit :do_foo, on: :create
after_commit :do_bar, on: :update
after_commit :do_baz, on: :destroy
after_commit :do_foo_bar, on: [:create, :update]
after_commit :do_bar_baz, on: [:update, :destroy]
Note that transactional fixtures do not play well with this feature. Please use the test_after_commit gem to have these hooks fired in tests.
237 238 239 240 241 242 243 |
# File 'lib/active_record/transactions.rb', line 237 def after_commit(*args, &block) (args) set_callback(:commit, :after, *args, &block) unless ActiveRecord::Base.raise_in_transactional_callbacks ActiveSupport::Deprecation.warn(CALLBACK_WARN_MESSAGE) end end |