diff --git a/services/backend/apps/achievement/models.py b/services/backend/apps/achievement/models.py index ef0689a..3da64bd 100644 --- a/services/backend/apps/achievement/models.py +++ b/services/backend/apps/achievement/models.py @@ -7,7 +7,7 @@ class Achievement(BaseModel): CORRECT_TASKS = "correct_tasks", "Выполненные задания" def image_url_upload_to(instance, filename): - return f"/achievements/{instance.id}/icon" + return f"achievements/{instance.id}/icon/{filename}" name = models.CharField(max_length=30, verbose_name="название", unique=True) diff --git a/services/backend/apps/competition/models.py b/services/backend/apps/competition/models.py index 18212f4..5d9880f 100644 --- a/services/backend/apps/competition/models.py +++ b/services/backend/apps/competition/models.py @@ -15,7 +15,7 @@ class Competition(BaseModel): SOLO = "solo", "Индивидуальный" def image_url_upload_to(instance, filename): - return f"/competitions/{instance.id}/image" + return f"competitions/{instance.id}/image/{filename}" title = models.CharField(max_length=100, verbose_name="название") description = models.TextField(verbose_name="описание") diff --git a/services/backend/apps/task/models.py b/services/backend/apps/task/models.py index 58d26bc..eea6047 100644 --- a/services/backend/apps/task/models.py +++ b/services/backend/apps/task/models.py @@ -18,7 +18,7 @@ class CompetitionTask(BaseModel): REVIEW = "review", "Ручная" def answer_file_upload_to(instance, filename) -> str: - return f"/tasks/{instance.id}/answer/{uuid4()}/filename" + return f"tasks/{instance.id}/answer/{uuid4()}/{filename}" in_competition_position = models.PositiveSmallIntegerField( null=True, blank=True @@ -81,7 +81,7 @@ class CompetitionTaskCriteria(BaseModel): class CompetitionTaskAttachment(BaseModel): def file_upload_at(instance, filename): - return f"/attachment/{instance.id}/file" + return f"attachment/{instance.id}/file/{filename}" task = models.ForeignKey(CompetitionTask, on_delete=models.CASCADE, verbose_name="задание") @@ -98,10 +98,10 @@ class CompetitionTaskSubmission(BaseModel): CHECKED = "checked" def submission_content_upload_to(instance, filename) -> str: - return f"submissions/{instance.id}/content" + return f"submissions/{instance.id}/content/{filename}" def submission_stdout_upload_to(instance, filename) -> str: - return f"/submissions/{instance.id}/stdout" + return f"submissions/{instance.id}/stdout/{filename}" user = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name="пользователь")