From db6b58777cec38c5d6715b9afc33caca0dbe950f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=97=D0=B5=D0=BB=D0=B5=D0=BD=D1=81=D0=BA=D0=B0=D1=8F=20?= =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=81=D1=82=D0=B0=D1=81=D0=B8=D1=8F=20=D0=9D?= =?UTF-8?q?=D0=B8=D0=BA=D0=BE=D0=BB=D0=B0=D0=B5=D0=B2=D0=BD=D0=B0?= Date: Mon, 1 Jul 2024 10:33:57 +0300 Subject: [PATCH 1/2] models --- back/object/models.py | 3 +-- back/object/serializers.py | 3 ++- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/back/object/models.py b/back/object/models.py index eb2a24d..6597479 100644 --- a/back/object/models.py +++ b/back/object/models.py @@ -21,7 +21,6 @@ class Element3D(models.Model): def __str__(self): return self.name - class Scene3D(models.Model): filter_horizontal = ('elements',) name = models.CharField( @@ -35,7 +34,7 @@ class Scene3D(models.Model): max_distance = models.IntegerField( validators=[MinValueValidator(2), MaxValueValidator(1000)], blank=True, null=True ) - gainmap = models.FileField() + gainmap = models.FileField(upload_to=group_based_upload_to) json = models.FileField() webp = models.FileField() diff --git a/back/object/serializers.py b/back/object/serializers.py index 5aa0011..3b2e6b3 100644 --- a/back/object/serializers.py +++ b/back/object/serializers.py @@ -11,7 +11,7 @@ class Element3DSerializer(serializers.ModelSerializer): class Scene3DSerializer(serializers.ModelSerializer): - elements = Element3DSerializer(many=True) + elements = serializers.ImageField(many=True, use_url=False) class Meta: model = Scene3D @@ -23,3 +23,4 @@ class ClickableAreaSerializer(serializers.ModelSerializer): class Meta: model = ClickableArea fields = "__all__" + From 953e22f2e6cfcb743d3372f9b9099d21185d65a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=97=D0=B5=D0=BB=D0=B5=D0=BD=D1=81=D0=BA=D0=B0=D1=8F=20?= =?UTF-8?q?=D0=90=D0=BD=D0=B0=D1=81=D1=82=D0=B0=D1=81=D0=B8=D1=8F=20=D0=9D?= =?UTF-8?q?=D0=B8=D0=BA=D0=BE=D0=BB=D0=B0=D0=B5=D0=B2=D0=BD=D0=B0?= Date: Mon, 1 Jul 2024 12:04:01 +0300 Subject: [PATCH 2/2] image --- back/object/models.py | 16 ++++++++++------ back/object/serializers.py | 6 +----- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/back/object/models.py b/back/object/models.py index a6055c3..bea9097 100644 --- a/back/object/models.py +++ b/back/object/models.py @@ -36,12 +36,6 @@ class Scene3D(models.Model): blank=True, null=True, ) -<<<<<<< HEAD - gainmap = models.FileField(upload_to=group_based_upload_to) - json = models.FileField() - webp = models.FileField() -======= ->>>>>>> 46d2586e693673bf1d8b8a390b297209bdf70ecb hdr_gainmap = models.FileField( upload_to=group_based_upload_to, blank=True, null=True @@ -53,6 +47,7 @@ class Scene3D(models.Model): return self.name + class ClickableArea(models.Model): name = models.CharField("название", max_length=255) description = models.TextField("описание") @@ -73,6 +68,15 @@ class ClickableArea(models.Model): Element3D, on_delete=models.PROTECT, ) + image = models.ImageField('Картинка', upload_to='images', blank=True, null=True) + # def image_size_validator_factory(min_w=600, min_h=600, field_name='image'): + # def validator(image): + # if image.width < min_w or image.height < min_h: + # raise ValidationError( + # {field_name: f'Размер картинки от {min_w}х{min_h} пикселей. '} + # ) + + def __str__(self): return self.name diff --git a/back/object/serializers.py b/back/object/serializers.py index e8db76d..3c40d60 100644 --- a/back/object/serializers.py +++ b/back/object/serializers.py @@ -11,16 +11,11 @@ class Element3DSerializer(serializers.ModelSerializer): class Scene3DSerializer(serializers.ModelSerializer): -<<<<<<< HEAD - elements = serializers.ImageField(many=True, use_url=False) - -======= elements = Element3DSerializer(many=True) hdr_gainmap = serializers.FileField(use_url=False) hdr_json = serializers.FileField(use_url=False) hdr_webp = serializers.FileField(use_url=False) ->>>>>>> 46d2586e693673bf1d8b8a390b297209bdf70ecb class Meta: model = Scene3D fields = "__all__" @@ -32,3 +27,4 @@ class ClickableAreaSerializer(serializers.ModelSerializer): model = ClickableArea fields = "__all__" +