mirror of
https://github.com/netbox-community/netbox.git
synced 2025-08-18 21:48:16 -06:00
14947 DRY save logic
This commit is contained in:
parent
6bed1cab1c
commit
110f963813
@ -70,6 +70,7 @@ def handle_changed_object(sender, instance, **kwargs):
|
|||||||
|
|
||||||
# Record an ObjectChange if applicable
|
# Record an ObjectChange if applicable
|
||||||
objectchange = instance.to_objectchange(action)
|
objectchange = instance.to_objectchange(action)
|
||||||
|
check_and_change = False
|
||||||
if m2m_changed:
|
if m2m_changed:
|
||||||
qs = ObjectChange.objects.filter(
|
qs = ObjectChange.objects.filter(
|
||||||
changed_object_type=ContentType.objects.get_for_model(instance),
|
changed_object_type=ContentType.objects.get_for_model(instance),
|
||||||
@ -77,19 +78,18 @@ def handle_changed_object(sender, instance, **kwargs):
|
|||||||
request_id=request.id
|
request_id=request.id
|
||||||
)
|
)
|
||||||
if not qs:
|
if not qs:
|
||||||
if objectchange and objectchange.has_changes:
|
check_and_change = True
|
||||||
objectchange.user = request.user
|
|
||||||
objectchange.request_id = request.id
|
|
||||||
objectchange.save()
|
|
||||||
else:
|
else:
|
||||||
qs.update(
|
qs.update(
|
||||||
postchange_data=objectchange.postchange_data
|
postchange_data=objectchange.postchange_data
|
||||||
)
|
)
|
||||||
else:
|
else:
|
||||||
if objectchange and objectchange.has_changes:
|
check_and_change = True
|
||||||
objectchange.user = request.user
|
|
||||||
objectchange.request_id = request.id
|
if check_and_change and objectchange and objectchange.has_changes:
|
||||||
objectchange.save()
|
objectchange.user = request.user
|
||||||
|
objectchange.request_id = request.id
|
||||||
|
objectchange.save()
|
||||||
|
|
||||||
# If this is an M2M change, update the previously queued webhook (from post_save)
|
# If this is an M2M change, update the previously queued webhook (from post_save)
|
||||||
queue = events_queue.get()
|
queue = events_queue.get()
|
||||||
|
Loading…
Reference in New Issue
Block a user