uniq
This commit is contained in:
parent
c754e50938
commit
c4cae388c6
|
@ -8,10 +8,12 @@ from markdownfield.validators import VALIDATOR_STANDARD
|
||||||
|
|
||||||
from mns.utils import group_based_upload_to
|
from mns.utils import group_based_upload_to
|
||||||
|
|
||||||
|
|
||||||
class SitePrefix:
|
class SitePrefix:
|
||||||
"""
|
"""
|
||||||
Класс для управления префиксами сайтов.
|
Класс для управления префиксами сайтов.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
GB = "gb"
|
GB = "gb"
|
||||||
KP = "kp"
|
KP = "kp"
|
||||||
SK = "sk"
|
SK = "sk"
|
||||||
|
@ -119,7 +121,6 @@ class Page(models.Model):
|
||||||
|
|
||||||
# Slug для URL страницы
|
# Slug для URL страницы
|
||||||
slug = models.SlugField(
|
slug = models.SlugField(
|
||||||
unique=True,
|
|
||||||
verbose_name="Slug",
|
verbose_name="Slug",
|
||||||
help_text="Введите уникальный slug для URL страницы",
|
help_text="Введите уникальный slug для URL страницы",
|
||||||
)
|
)
|
||||||
|
@ -142,7 +143,7 @@ class Page(models.Model):
|
||||||
verbose_name="Внешняя ссылка",
|
verbose_name="Внешняя ссылка",
|
||||||
help_text="Введите внешнюю ссылку, если она есть",
|
help_text="Введите внешнюю ссылку, если она есть",
|
||||||
)
|
)
|
||||||
|
|
||||||
site = models.CharField(
|
site = models.CharField(
|
||||||
max_length=20,
|
max_length=20,
|
||||||
choices=SitePrefix.CHOICES,
|
choices=SitePrefix.CHOICES,
|
||||||
|
@ -150,13 +151,16 @@ class Page(models.Model):
|
||||||
help_text="Выберите сайт, к которому относится эта страница",
|
help_text="Выберите сайт, к которому относится эта страница",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return f"{self.menu_title} #{self.slug} {self.order}"
|
return f"{self.menu_title} #{self.slug} {self.order}"
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
verbose_name = "Страница"
|
verbose_name = "Страница"
|
||||||
verbose_name_plural = "Страницы"
|
verbose_name_plural = "Страницы"
|
||||||
|
# Ограничение уникальности для сочетания site и slug
|
||||||
|
constraints = [
|
||||||
|
models.UniqueConstraint(fields=["site", "slug"], name="unique_site_slug")
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
class Menu(models.Model):
|
class Menu(models.Model):
|
||||||
|
@ -226,7 +230,7 @@ class ReviewModel(models.Model):
|
||||||
comment = models.TextField(
|
comment = models.TextField(
|
||||||
verbose_name="Комментарий", help_text="Введите комментарий к отзыву"
|
verbose_name="Комментарий", help_text="Введите комментарий к отзыву"
|
||||||
)
|
)
|
||||||
|
|
||||||
site = models.CharField(
|
site = models.CharField(
|
||||||
max_length=20,
|
max_length=20,
|
||||||
choices=SitePrefix.CHOICES,
|
choices=SitePrefix.CHOICES,
|
||||||
|
@ -278,7 +282,7 @@ class Ref1C(models.Model):
|
||||||
updated_at = models.DateTimeField(
|
updated_at = models.DateTimeField(
|
||||||
auto_now=True,
|
auto_now=True,
|
||||||
verbose_name="Последнее обновление",
|
verbose_name="Последнее обновление",
|
||||||
help_text="Дата и время последнего обновления записи"
|
help_text="Дата и время последнего обновления записи",
|
||||||
)
|
)
|
||||||
description = models.CharField(
|
description = models.CharField(
|
||||||
max_length=255,
|
max_length=255,
|
||||||
|
@ -294,7 +298,6 @@ class Ref1C(models.Model):
|
||||||
help_text="Объединенное значение из Комментарий и КомментарийКалькуляции",
|
help_text="Объединенное значение из Комментарий и КомментарийКалькуляции",
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return f"{self.description} Ref_Key: {self.ref_key}"
|
return f"{self.description} Ref_Key: {self.ref_key}"
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue