From 549400c6450ac2fba6f5afca556e0ef03ffd652d Mon Sep 17 00:00:00 2001 From: Sage Abdullah Date: Mon, 5 Feb 2024 11:44:39 +0000 Subject: [PATCH] Add GenericRelation to revisions and workflow states --- bakerydemo/base/models.py | 25 +++++++++++++++++++++++++ bakerydemo/breads/models.py | 17 +++++++++++++++++ 2 files changed, 42 insertions(+) diff --git a/bakerydemo/base/models.py b/bakerydemo/base/models.py index 3ae5335..09fc1ff 100644 --- a/bakerydemo/base/models.py +++ b/bakerydemo/base/models.py @@ -1,5 +1,6 @@ from __future__ import unicode_literals +from django.contrib.contenttypes.fields import GenericRelation from django.db import models from django.utils.translation import gettext as _ from modelcluster.fields import ParentalKey @@ -67,6 +68,22 @@ class Person( related_name="+", ) + workflow_states = GenericRelation( + "wagtailcore.WorkflowState", + content_type_field="base_content_type", + object_id_field="object_id", + related_query_name="person", + for_concrete_model=False, + ) + + revisions = GenericRelation( + "wagtailcore.Revision", + content_type_field="base_content_type", + object_id_field="object_id", + related_query_name="person", + for_concrete_model=False, + ) + panels = [ MultiFieldPanel( [ @@ -163,6 +180,14 @@ class FooterText( body = RichTextField() + revisions = GenericRelation( + "wagtailcore.Revision", + content_type_field="base_content_type", + object_id_field="object_id", + related_query_name="footer_text", + for_concrete_model=False, + ) + panels = [ FieldPanel("body"), PublishingPanel(), diff --git a/bakerydemo/breads/models.py b/bakerydemo/breads/models.py index a2be7e9..25212aa 100644 --- a/bakerydemo/breads/models.py +++ b/bakerydemo/breads/models.py @@ -1,4 +1,5 @@ from django import forms +from django.contrib.contenttypes.fields import GenericRelation from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator from django.db import models from modelcluster.fields import ParentalManyToManyField @@ -42,6 +43,14 @@ class BreadIngredient(DraftStateMixin, RevisionMixin, models.Model): name = models.CharField(max_length=255) + revisions = GenericRelation( + "wagtailcore.Revision", + content_type_field="base_content_type", + object_id_field="object_id", + related_query_name="bread_ingredient", + for_concrete_model=False, + ) + panels = [ FieldPanel("name"), ] @@ -66,6 +75,14 @@ class BreadType(RevisionMixin, models.Model): title = models.CharField(max_length=255) + revisions = GenericRelation( + "wagtailcore.Revision", + content_type_field="base_content_type", + object_id_field="object_id", + related_query_name="bread_type", + for_concrete_model=False, + ) + panels = [ FieldPanel("title"), ]