Module: GuardAgainstPhysicalDelete::Relation

Defined in:
lib/guard_against_physical_delete/relation.rb

Class Method Summary collapse

Class Method Details

.included(obj) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
# File 'lib/guard_against_physical_delete/relation.rb', line 3

def self.included(obj)
  obj.class_eval do
    def delete_all_with_check_permit(conditions = nil)
      unless @klass.delete_permitted?
        raise GuardAgainstPhysicalDelete::PhysicalDeleteError, @klass.name
      end
      delete_all_without_check_permit(conditions)
    end

    alias_method_chain :delete_all, :check_permit
  end
end