【问题标题】:How to upload multiple image with django rest api如何使用 django rest api 上传多张图片
【发布时间】:2020-12-05 09:21:10
【问题描述】:

我想知道如何在我的视图中上传多个图像(列表)并获得这样的响应:

{
 "id":1,
 "title":"text",
 "roms":2,
 "image":[
   "http:localhost:8000/media/images/houses/image1.png",
   "http:localhost:8000/media/images/houses/image2.png",
   "http:localhost:8000/media/images/houses/image3.png",
]
}

我试过这种方法:

models.py

from django.db import models

class House(models.Model):
    title = models.CharField(max_length=255)
    rooms = models.IntegerField()
    images = models.FileField(upload_to="images/houses/")

    def __str__(self):
       return self.title

serializers.py*

from rest_framework import serializers
from .models import House

class HouseSerializer(serializers.ModelSerializer):
   image = serializers.ListField(max_length=None,child=serializers.FileField)

   class Meta:
      model = House
      fields = '__all__'

views.py

from rest_framework import viewsets
from .models import House 
from .serializers import HouseSerializer

class HomeViewSet(viewsets.ModelViewSet):
   queryset = House.objects.all()
   serialiezer_class = HouseSerializer

但它不起作用,我不知道如何编写序列化程序和视图来做到这一点,请任何人帮忙。

提前致谢

【问题讨论】:

    标签: python django django-rest-framework upload


    【解决方案1】:

    Upload multi img to 1 post on Django ? How do that?

    首先你必须改变你的模型。然后,您需要通过打开使用 for 循环加载的照片到您的图像模型来添加到此模型。我不确切知道如何使用其余 api 执行此事件,但这是在正常条件下完成的方式。

    【讨论】:

      猜你喜欢
      • 2021-02-27
      • 1970-01-01
      • 2016-05-02
      • 1970-01-01
      • 2017-09-09
      • 1970-01-01
      • 2022-08-24
      • 2020-07-08
      相关资源
      最近更新 更多