From b217ce412e27732159e1a58ad5de123f371ad61c Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Tue, 12 Apr 2022 18:48:17 +0200 Subject: Operation - fix label regeneration on town change --- archaeological_operations/models.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'archaeological_operations/models.py') 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") -- cgit v1.2.3