python - “此字段为必填项”,即使我正在上传我的文件
问题描述
这是我上一个问题的后续问题:HTML Input 中当前不支持列表。我了解到 Django-Rest-Framework 可浏览 API 根本不支持列表,我正在尝试测试我使用 Postman 发布数据的能力。
我得到的错误是:我的 BreedImages 字段的“此字段是必需的”,即使我正在发布它。
以下是一些图片:
这是我的模型:
class Breed(models.Model):
name = models.CharField(max_length=150)
def __str__(self):
return self.name
class BreedImage(models.Model):
breed = models.ForeignKey(Breed, related_name='BreedImages', on_delete=models.CASCADE)
breedImage = models.ImageField(upload_to='photos', null=True, blank=True)
我的序列化器:
class ImageSerializer(serializers.ModelSerializer):
class Meta:
model = BreedImage
fields = ['id', 'breedImage']
class BreedSerializer(serializers.ModelSerializer):
BreedImages = ImageSerializer(many=True, allow_null=True, required=True)
class Meta:
model = Breed
fields = ['name', 'BreedImages']
我的观点:
class BreedList(generics.ListCreateAPIView):
parser_classes = (MultiPartParser,)
queryset = Breed.objects.all()
serializer_class = BreedSerializer
pagination_class = None
解决方案
您想{"name": "Hello", "BreedImages": [img.png, img2.png]}
在一个请求中发送数据并保存在模型中吗?
推荐阅读
- python - 如何覆盖 wx.grid.GridTableBase.SetRowLabelValue() 方法来设置虚拟网格的值
- javascript - node.js 和 express 中的循环技术
- github - 在 GitLab 中使用 CURL
- java - 来自 tFileInputMail 的无法解析的日期
- kotlin - 使用 kotlin 作用域函数和 elvis 运算符进行 val 初始化
- java - Azure IMDS + Java SDK
- c# - 如何从实例化/克隆的游戏对象中获取 TextMeshProUGUI 组件?
- azure - Azure Powershell Get-AzWebAppSlot AppSettings 始终为空
- java - 在 websocket java 中禁用 SSL 认证
- c# - Microsoft Graph API - 发送读取文件的请求时出错