@Egegey

Загрузка и сохранение нескольких изображений в М2М поле Django Rest?

Как бы я не пытался, но не смог заполнить словарь validated_data списком изображений, который отправляется на сервер.
Ключ images отсутствует в словаре, метод validate_images не запускается. C cover_image всё в порядке
Подскажите, можно ли заполнить словарь validated_data провалидированным списком изображений (InMemoryUploadFile), кроме как доставать сырые файлы из request.FILES?

6102c8b8c891b604061551.png
Я правильно отправляю через PostMan?

class Image(models.Model):
    name = models.CharField(max_length=255, blank=True)
    image = models.ImageField(upload_to='images/', validators=[validation_existing_image])

class Address(models.Model):
    cover_image = models.ForeignKey(Image, on_delete=models.SET_NULL, null=True, related_name='+', blank=True)
    images = models.ManyToManyField(Image, related_name='+', blank=True)

class UpdateAddressSerializer(serializers.ModelSerializer):
    cover_image = serializers.ImageField()
    images = serializers.ListSerializer(child=serializers.ImageField())

    class Meta:
        model = Address
        fields = '__all__'

        def validate_images(self, value):
            return value
  • Вопрос задан
  • 177 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Egegey Автор вопроса
Косяк в этой строчке:
images = serializers.ListSerializer(child=serializers.ImageField())

ListSerializer нужно заменить на ListField и всё заработало.
Хотя в доке всё верно указано, я просто не заметил
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы