AI智能
改变未来

django rest 实现多图片上传

  1. models 配置

    class ImageItems(models.Model):image = models.ImageField(upload_to=\'static/images/%Y/%m/%d\', null=False, blank=False, verbose_name=\'图片url\')class Meta:verbose_name = \'图片集合\'verbose_name_plural = verbose_name

    2.serializers 配置

    class ListImgSerializer(serializers.Serializer):img = serializers.ListField(child=serializers.FileField(max_length=100000,allow_empty_file=False,use_url=True), write_only=True)img_list = serializers.ListField(child=serializers.CharField(max_length=1000, ), read_only=True)code = serializers.IntegerField(read_only=True)def create(self, validated_data):imgs = validated_data.get(\'img\')images = []for index, url in enumerate(imgs):image = ImageItems.objects.create(image=url)imageItems = ImageItemsSerializer(image, context=self.context)images.append(imageItems.data[\'image\'])return {\"img_list\": images, \"code\": 201}
  2. viewSet 配置
    class ImageItemsViewSet(mixins.CreateModelMixin, viewsets.GenericViewSet):queryset = ImageItems.objects.all()serializer_class = ListImgSerializerparser_classes = (MultiPartParser, FileUploadParser,)
  3. url 自己完成了,so easy
  4. postman 验证
赞(0) 打赏
未经允许不得转载:爱站程序员基地 » django rest 实现多图片上传