From 79d730cacb0fc9f42822377eb7303fce6631e89b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Bedna=C5=99=C3=ADk?= <jan.bednarik@gmail.com> Date: Wed, 5 May 2021 00:27:03 +0200 Subject: [PATCH] donate: Property caching --- donate/models.py | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/donate/models.py b/donate/models.py index f4a78aa0..895d4608 100644 --- a/donate/models.py +++ b/donate/models.py @@ -1,3 +1,5 @@ +from functools import cached_property + from django.conf import settings from django.core.cache import cache from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator @@ -190,19 +192,19 @@ class DonateHomePage(DonateFormMixin, DonateFormAmountsMixin, Page, MetadataPage def root_page(self): return self - @property + @cached_property def info_page_url(self): return get_subpage_url(self, DonateInfoPage) - @property + @cached_property def projects_page_url(self): return get_subpage_url(self, DonateProjectIndexPage) - @property + @cached_property def regions_page_url(self): return get_subpage_url(self, DonateRegionIndexPage) - @property + @cached_property def has_projects(self): return self.get_descendants().type(DonateProjectPage).live().exists() @@ -324,11 +326,11 @@ class DonateRegionPage( def get_meta_title(self): return self.seo_title or self.main_title - @property + @cached_property def targeted_donations_page_url(self): return get_subpage_url(self, DonateTargetedDonationsPage) - @property + @cached_property def has_targeted_donations(self): return self.get_descendants().type(DonateTargetedDonationsPage).live().exists() @@ -603,7 +605,7 @@ class DonateInfoPage(DonateFormMixin, Page, SubpageMixin, MetadataPageMixin): verbose_name = "Infostránka s formulářem" # use portal_project_id from home page - @property + @cached_property def portal_project_id(self): return self.get_parent().specific.portal_project_id -- GitLab