Class: Deactivator

Inherits:
Object
  • Object
show all
Defined in:
lib/deactivator.rb

Overview

Deactivate default_scopes for the given classes for a given code block ————————— Usage ————————— Deactivator.new([‘ClassA’, ‘ClassB’]).without_default_scopes do

My
Code
Block
Without ClassA and ClassB default_scopes

end

Instance Method Summary collapse

Constructor Details

#initialize(classes) ⇒ Deactivator

Returns a new instance of Deactivator.



10
11
12
13
# File 'lib/deactivator.rb', line 10

def initialize(classes)
  @classes = classes
  @default_scopes = capture_default_scopes
end

Instance Method Details

#without_default_scopesObject



15
16
17
18
19
20
# File 'lib/deactivator.rb', line 15

def without_default_scopes
  remove_default_scopes
  yield
ensure
  restore_default_scopes
end