Class: ChrnoAudit::AuditObserver

Inherits:
ActiveRecord::Observer
  • Object
show all
Defined in:
app/models/chrno_audit/audit_observer.rb

Overview

Обзервер записывает изменения моделей в лог.

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.attach(model) ⇒ Object

Добавляет обзервер к заданной модели.



16
17
18
# File 'app/models/chrno_audit/audit_observer.rb', line 16

def self.attach( model )
  self.instance.send :add_observer!, model
end

.observed_classesObject

По умолчанию ничего не обозреваем



8
9
10
# File 'app/models/chrno_audit/audit_observer.rb', line 8

def self.observed_classes
  []
end

Instance Method Details

#after_create(entity) ⇒ Object

Создаёт запись о создании сущности.



21
22
23
# File 'app/models/chrno_audit/audit_observer.rb', line 21

def after_create( entity )
  create_audit_record! entity, :create
end

#after_destroy(entity) ⇒ Object

Создаёт запись об удалении сущности.



31
32
33
# File 'app/models/chrno_audit/audit_observer.rb', line 31

def after_destroy( entity )
  create_audit_record! entity, :destroy
end

#after_update(entity) ⇒ Object

Создаёт запись об изменении сущности.



26
27
28
# File 'app/models/chrno_audit/audit_observer.rb', line 26

def after_update( entity )
  create_audit_record! entity, :update
end