From 41008d090cde806d7c80b6da3d475b0e1fddb11a Mon Sep 17 00:00:00 2001 From: ITQ Date: Sat, 1 Mar 2025 18:05:45 +0300 Subject: [PATCH] (scope): [body] [footer(s)] --- services/backend/api/v1/user/views.py | 1 - services/backend/apps/competition/models.py | 13 ++++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/services/backend/api/v1/user/views.py b/services/backend/api/v1/user/views.py index ff49988..2990f62 100644 --- a/services/backend/api/v1/user/views.py +++ b/services/backend/api/v1/user/views.py @@ -27,7 +27,6 @@ router = Router(tags=["user"]) ) def sign_up(request, data: RegisterSchema): user = User(**data.dict()) - user.full_clean() user.save() token = BearerAuth.generate_jwt(user) diff --git a/services/backend/apps/competition/models.py b/services/backend/apps/competition/models.py index 0c6bd19..e7b7814 100644 --- a/services/backend/apps/competition/models.py +++ b/services/backend/apps/competition/models.py @@ -14,10 +14,16 @@ class Competition(BaseModel): EDU = "edu", "Образовательный" COMPETITIVE = "competitive", "Соревновательный" + def image_url_upload_to(instance, filename): + return f"/competitions/{instance.id}/image" + title = models.CharField(max_length=100, verbose_name="Название") description = models.TextField(verbose_name="Описание") image_url = models.FileField( - verbose_name="Изображение соревнования", null=True, blank=True + verbose_name="Изображение соревнования", + null=True, + blank=True, + upload_to=image_url_upload_to, ) end_date = models.DateTimeField( verbose_name="Дедлайн участия", null=True, blank=True @@ -35,8 +41,9 @@ class Competition(BaseModel): choices=CompetitionParticipationType.choices, verbose_name="Тип соревнования", ) - participants = models.ManyToManyField(User, related_name="participants", blank=True, - editable=False) + participants = models.ManyToManyField( + User, related_name="participants", blank=True, editable=False + ) def __str__(self): return self.title