From 9177d7f3e3bd1d3258971e1f724cc0b83d168f3f Mon Sep 17 00:00:00 2001 From: Montana Date: Mon, 26 Nov 2018 16:30:03 -0500 Subject: [PATCH] Handle update events when previous state was None --- atst/models/mixins/auditable.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/atst/models/mixins/auditable.py b/atst/models/mixins/auditable.py index 9d34dece..b39c8768 100644 --- a/atst/models/mixins/auditable.py +++ b/atst/models/mixins/auditable.py @@ -17,9 +17,12 @@ class AuditableMixin(object): request_id = resource.auditable_request_id() resource_type = resource.auditable_resource_type() display_name = resource.auditable_displayname() - changed_state = resource.auditable_changed_state() event_details = resource.auditable_event_details() + changed_state = ( + resource.auditable_changed_state() if action == ACTION_UPDATE else None + ) + audit_event = AuditEvent( user_id=user_id, workspace_id=workspace_id, @@ -69,7 +72,9 @@ class AuditableMixin(object): for attr in attrs: history = getattr(inspect(self).attrs, attr.key).history if history.has_changes(): - previous_state[attr.key] = [history.deleted.pop(), history.added.pop()] + deleted = history.deleted.pop() if history.deleted else None + added = history.added.pop() if history.added else None + previous_state[attr.key] = [deleted, added] return previous_state def auditable_changed_state(self):