Files
vgui-cicd/referenzen/models.py
Adrian A. Baumann f7a20648b2
All checks were successful
Build containers when image tags change / build-if-image-changed (., web, containers, main container, git.baumann.gr/adebaumann/vui) (push) Successful in 31s
Build containers when image tags change / build-if-image-changed (data-loader, loader, initContainers, init-container, git.baumann.gr/adebaumann/vui-data-loader) (push) Successful in 8s
Changes in referenz entry field
2026-02-12 15:40:21 +01:00

38 lines
1.2 KiB
Python

from django.db import models
from mptt.models import MPTTModel, TreeForeignKey
from abschnitte.models import Textabschnitt
# Create your models here.
class Referenz(MPTTModel):
id = models.AutoField(primary_key=True)
name_nummer = models.CharField(max_length=100)
name_text=models.CharField(max_length=255, blank=True)
oberreferenz = TreeForeignKey(
'self', null=True, blank=True, on_delete=models.SET_NULL, related_name='unterreferenzen'
)
url = models.URLField(blank=True)
def Path(self):
path = "".join([x.name_nummer for x in self.get_ancestors(include_self=True)])
if self.name_text:
path += " (%s)" % self.name_text
return path
class MPTTMeta:
parent_attr = 'oberreferenz' # optional, but safe
order_insertion_by = ['name_nummer']
def __str__(self):
return self.Path()
class Meta:
verbose_name_plural="Referenzen"
verbose_name="Referenz"
class Referenzerklaerung (Textabschnitt):
erklaerung = models.ForeignKey(Referenz,on_delete=models.CASCADE)
class Meta:
verbose_name="Erklärung"
verbose_name_plural="Erklärungen"