from django.db import models from django.utils.translation import gettext_lazy as _ from polymorphic.models import PolymorphicModel from aleksis.core.mixins import ExtensibleModel, PureDjangoModel class DisplayGroup(ExtensibleModel): name = models.CharField(max_length=255, verbose_name=_("Name")) slug = models.SlugField(max_length=255, verbose_name=_("Slug")) def __str__(self) -> str: return self.name class Display(ExtensibleModel): display_group = models.ForeignKey( DisplayGroup, verbose_name=_("Display group"), on_delete=models.CASCADE ) hostname = models.CharField(max_length=255, verbose_name=_("Hostname")) def __str__(self) -> str: return self.hostname class Slide(PolymorphicModel, PureDjangoModel): display_group = models.ForeignKey( DisplayGroup, verbose_name=_("Display group"), on_delete=models.CASCADE )