Skip to content

Commit 292e976

Browse files
committed
Ajout champs Wagtail au modèle Famille
1 parent afdfa71 commit 292e976

File tree

1 file changed

+16
-14
lines changed

1 file changed

+16
-14
lines changed

qfdmd/models.py

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -44,14 +44,28 @@ class Meta:
4444
verbose_name_plural = "Contenus réutilisable"
4545

4646

47-
class ProduitIndexPage(Page):
47+
class CompiledFieldMixin:
48+
@cached_property
49+
def famille(self):
50+
if famille := self.get_ancestors().type(FamilyPage).first():
51+
return famille
52+
return famille
53+
54+
@cached_property
55+
def compiled_body(self):
56+
if not getattr(self, "body") and self.famille:
57+
return self.famille.specific.body
58+
return self.body
59+
60+
61+
class ProduitIndexPage(Page, CompiledFieldMixin):
4862
subpage_types = ["qfdmd.produitpage", "qfdmd.familypage"]
4963

5064
class Meta:
5165
verbose_name = "Index des familles & produits"
5266

5367

54-
class ProduitPage(Page):
68+
class ProduitPage(Page, CompiledFieldMixin):
5569
subpage_types = [
5670
"qfdmd.synonymepage",
5771
]
@@ -71,18 +85,6 @@ class ProduitPage(Page):
7185
null=True,
7286
)
7387

74-
@cached_property
75-
def famille(self):
76-
if famille := self.get_ancestors().type(FamilyPage).first():
77-
return famille
78-
return famille
79-
80-
@cached_property
81-
def compiled_body(self):
82-
if not getattr(self, "body") and self.famille:
83-
return self.famille.specific.body
84-
return self.body
85-
8688
genre = models.CharField("Genre", choices=[("m", "Masculin"), ("f", "Féminin")])
8789
nombre = models.IntegerField("Nombre", choices=[(1, "singulier"), (2, "pluriel")])
8890
usage_unique = models.BooleanField(

0 commit comments

Comments
 (0)