Method: ActiveModel::ObserverArray#disable

Defined in:
lib/active_model/observer_array.rb

#disable(*observers, &block) ⇒ Object

Disables one or more observers. This supports multiple forms:

ORM.observers.disable :user_observer
  # => disables the UserObserver

User.observers.disable AuditTrail
  # => disables the AuditTrail observer for User notifications.
  #    Other models will still notify the AuditTrail observer.

ORM.observers.disable :observer_1, :observer_2
  # => disables Observer1 and Observer2 for all models.

ORM.observers.disable :all
  # => disables all observers for all models.

User.observers.disable :all do
  # all user observers are disabled for
  # just the duration of the block
end


37
38
39
# File 'lib/active_model/observer_array.rb', line 37

def disable(*observers, &block)
  set_enablement(false, observers, &block)
end