gpt4 book ai didi

python - 为什么这个 Django 表单会为图像字段提示 "this field is required"?

转载 作者:太空宇宙 更新时间:2023-11-03 13:04:59 24 4
gpt4 key购买 nike

使用“Photologue”,我可以毫无问题地将图像作为表单的一部分上传。然而,在测试计划中,我无法获取要验证的图像。

在测试.py中:

data_photo = {'competition': self.newcomp,  
'title': 'Rabbit',
'image': open('photocompetitions/static/img/body_bg.jpg'),
'flickr_id': '425258',
'description': 'A picture of a rabbit',
'location': 'POINT (5000 5000)',
'location_description': 'Just some random place',
'copyright': 'Copyright 2011'}
photoform = PhotoForm(data_photo)

除了“图像”字段因“此字段为必填”而失败外,一切正常。消息,所以我假设尽管有 open() 命令,但没有收到它。 'image' 字段是 photologue 的 ImageModel 模型,并作为标准上传表单出现在网站上。

最佳答案

您必须不在 data 中传递图像,而是在表单的 files 参数中传递图像。

from django.core.files.uploadedfile import SimpleUploadedFile

img = open('photocompetitions/static/img/body_bg.jpg')
uploaded = SimpleUploadedFile(img.name, img.read())
photoform = PhotoForm(data_photo, files={'image': uploaded})

关于python - 为什么这个 Django 表单会为图像字段提示 "this field is required"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6263434/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com