From 466398d76996c5219491807e28709ec17706e8d3 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 27 Jan 2023 17:31:00 +0100 Subject: Add custom cached_label configuration for each main item --- ishtar_common/models_common.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'ishtar_common/models_common.py') diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py index b239813f3..f50395dee 100644 --- a/ishtar_common/models_common.py +++ b/ishtar_common/models_common.py @@ -3982,6 +3982,13 @@ class ImageContainerModel: class CompleteIdentifierItem(models.Model, ImageContainerModel): HAS_QR_CODE = True + cached_label = models.TextField( + _("Cached name"), + blank=True, + default="", + db_index=True, + help_text=_("Generated automatically - do not edit"), + ) complete_identifier = models.TextField( _("Complete identifier"), blank=True, default="" ) @@ -4001,6 +4008,19 @@ class CompleteIdentifierItem(models.Model, ImageContainerModel): return "" return self.qrcode.path + def _profile_generate_cached_label(self): + slug = getattr(self, "SLUG", None) + if not slug: + return + return get_generated_id(slug + "_cached_label", self) + + def _generate_cached_label(self): + label = self._profile_generate_cached_label() + if not label: + # to be eventually overloaded by parent class + return str(self) + return label + def generate_qrcode(self, request=None, secure=True, tmpdir=None): url = self.get_absolute_url() site = Site.objects.get_current() -- cgit v1.2.3