logging: handling cases when objects created, modified or deleted from shell
This commit is contained in:
parent
dce0454ac5
commit
b58c4ed6cb
|
@ -1,6 +1,8 @@
|
|||
from django.db.models.signals import post_save, pre_delete
|
||||
from ..middleware.request import get_request
|
||||
|
||||
import django_journal
|
||||
|
||||
from calebasse.agenda.models import Event, EventWithAct, EventType
|
||||
from calebasse.actes.models import ActValidationState, Act
|
||||
from calebasse.dossiers.models import FileState, PatientRecord, PatientAddress, PatientContact
|
||||
|
@ -10,19 +12,26 @@ def object_save(sender, **kwargs):
|
|||
model_name = sender.__name__.lower()
|
||||
if kwargs.get('created'):
|
||||
tag = 'new-%s' % model_name
|
||||
log = '{obj_id} created by {user} from {ip}'
|
||||
log = '{obj} created'
|
||||
else:
|
||||
tag = '%s-save' % model_name
|
||||
log = '{obj_id} saved by {user} from {ip}'
|
||||
log = '{obj} saved'
|
||||
|
||||
obj_id = kwargs['instance'].id
|
||||
get_request().record(tag, log, obj_id=obj_id)
|
||||
obj = kwargs['instance']
|
||||
try:
|
||||
get_request().record(tag, log, obj=obj)
|
||||
except AttributeError:
|
||||
django_journal.record(tag, '{obj} from shell', obj=obj)
|
||||
|
||||
def object_delete(sender, **kwargs):
|
||||
model_name = sender.__name__.lower()
|
||||
get_request().record('delete-%s' % model_name,
|
||||
'{obj_id} deleted by {user} from {ip}',
|
||||
obj_id=kwargs['instance'].id)
|
||||
try:
|
||||
get_request().record('delete-%s' % model_name,
|
||||
'{obj}',
|
||||
obj=kwargs['instance'])
|
||||
except AttributeError:
|
||||
django_journal.record('delete-%s' % model_name,
|
||||
'{obj} from shell', obj=kwargs['instance'])
|
||||
|
||||
for model in (Event, EventWithAct, EventType, ActValidationState, Act,
|
||||
FileState, PatientRecord, PatientAddress, PatientContact,
|
||||
|
|
Reference in New Issue