fix: skip patchpanel automation on edits

This commit is contained in:
2026-08-06 16:07:47 +02:00
parent 66d13292f2
commit 267a78d58d
5 changed files with 57 additions and 11 deletions
+6 -2
View File
@@ -117,8 +117,8 @@ def synchronize_patchpanel(device_id):
return len(pairs)
def _component_saved(sender, instance, raw=False, **kwargs):
if not raw and not _component_instantiation_active.get():
def _component_saved(sender, instance, created=False, raw=False, **kwargs):
if created and not raw and not _component_instantiation_active.get():
synchronize_patchpanel(getattr(instance, "device_id", None))
@@ -131,6 +131,10 @@ def _wrap_component_container_save(model, device_id_getter):
@wraps(original_save)
def patchpanel_aware_save(instance, *args, **kwargs):
created = instance._state.adding
if not created:
return original_save(instance, *args, **kwargs)
token = _component_instantiation_active.set(True)
try:
result = original_save(instance, *args, **kwargs)