From 1ccbe947e0d721e4f6e10f1c17db6dfa13b47195 Mon Sep 17 00:00:00 2001 From: Arthur Date: Fri, 16 Feb 2024 11:04:40 -0800 Subject: [PATCH] 14438 post_save sync handler --- netbox/extras/models/scripts.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/netbox/extras/models/scripts.py b/netbox/extras/models/scripts.py index 3a8323ccb..a3fd0827b 100644 --- a/netbox/extras/models/scripts.py +++ b/netbox/extras/models/scripts.py @@ -5,6 +5,8 @@ from functools import cached_property from django.contrib.contenttypes.fields import GenericRelation from django.db import models from django.db.models import Q +from django.db.models.signals import post_save +from django.dispatch import receiver from django.urls import reverse from django.utils.translation import gettext_lazy as _ @@ -150,5 +152,9 @@ class ScriptModule(PythonModuleMixin, JobsMixin, ManagedFile): def save(self, *args, **kwargs): self.file_root = ManagedFileRootPathChoices.SCRIPTS - super().save(*args, **kwargs) - self.sync_classes() + return super().save(*args, **kwargs) + + +@receiver(post_save, sender=ScriptModule) +def script_module_post_save_handler(instance, created, **kwargs): + instance.sync_classes()