diff --git a/activemodel/lib/active_model/observer_array.rb b/activemodel/lib/active_model/observer_array.rb index b8aa9cc1e2a35..cd478d8f9f497 100644 --- a/activemodel/lib/active_model/observer_array.rb +++ b/activemodel/lib/active_model/observer_array.rb @@ -13,10 +13,12 @@ def self.for(model_class) INSTANCES[model_class] end - # returns false if: + # Returns false if: # - the ObserverArray for the given model's class has the given observer # in its disabled_observers set. # - or that is the case at any level of the model's superclass chain. + # + # On other cases it returns true, since observers are enabled by default. def self.observer_enabled?(observer, model) klass = model.class observer_class = observer.class @@ -40,10 +42,12 @@ def initialize(model_class, *args) super(*args) end + # Disable the given observers. def disable(*observers, &block) set_enablement(false, observers, &block) end + # Enable the given observers. def enable(*observers, &block) set_enablement(true, observers, &block) end