update
This commit is contained in:
35
core/apps/api/models/ad/image.py
Normal file
35
core/apps/api/models/ad/image.py
Normal file
@@ -0,0 +1,35 @@
|
||||
from django.db import models
|
||||
from django_core.models.base import AbstractBaseModel
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
|
||||
|
||||
class AdImageModel(AbstractBaseModel):
|
||||
ad = models.ForeignKey(
|
||||
"api.AdModel",
|
||||
on_delete=models.CASCADE,
|
||||
verbose_name=_("Ad"),
|
||||
related_name="images"
|
||||
)
|
||||
ad_variant = models.ForeignKey(
|
||||
"api.AdVariantModel",
|
||||
on_delete=models.CASCADE,
|
||||
verbose_name=_("Ad Variant"),
|
||||
related_name="images",
|
||||
null=True,
|
||||
blank=True
|
||||
)
|
||||
image = models.ImageField(_("Image"), upload_to="ads/images/")
|
||||
order = models.PositiveIntegerField(_("Display Order"), default=0)
|
||||
is_primary = models.BooleanField(_("Is Primary"), default=False)
|
||||
|
||||
def __str__(self):
|
||||
return f"Image for {self.ad.name}"
|
||||
|
||||
class Meta:
|
||||
db_table = "ad_images"
|
||||
verbose_name = _("Ad Image")
|
||||
verbose_name_plural = _("Ad Images")
|
||||
ordering = ["order", "-created_at"]
|
||||
indexes = [
|
||||
models.Index(fields=["ad", "is_primary"]),
|
||||
]
|
||||
Reference in New Issue
Block a user