diff options
Diffstat (limited to 'archaeological_operations/models.py')
-rw-r--r-- | archaeological_operations/models.py | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/archaeological_operations/models.py b/archaeological_operations/models.py index 3fe658508..2c018ce20 100644 --- a/archaeological_operations/models.py +++ b/archaeological_operations/models.py @@ -2069,6 +2069,20 @@ def operation_post_save(sender, **kwargs): post_save.connect(operation_post_save, sender=Operation) +def operation_town_m2m_changed(sender, **kwargs): + operation = kwargs.get("instance", None) + if not operation: + return + operation._prevent_loop = False + operation.regenerate_all_ids() + cached_label_changed(sender, **kwargs) + + +m2m_changed.connect( + operation_town_m2m_changed, sender=Operation.towns.through +) + + class RelationType(GeneralRelationType): class Meta: verbose_name = _("Operation relation type") |