Python SimpleUploadedFile赢得';t柱

Python SimpleUploadedFile赢得';t柱,python,django,django-testing,Python,Django,Django Testing,我想使用客户端将字典传递给函数。看起来是这样的: response = self.client.post( '/upload_image/', {'image': image, 'tags': ['orion', ]}) 在我看来,它将数据发布到我拥有的: print(request.POST) image = request.POST['image'] tags = reguest.POST['tags'] 请求时出现多值错误。POST['image'] print(req

我想使用客户端将字典传递给函数。看起来是这样的:

response = self.client.post(
        '/upload_image/', {'image': image, 'tags': ['orion', ]})
在我看来,它将数据发布到我拥有的:

print(request.POST)
image = request.POST['image']
tags = reguest.POST['tags']
请求时出现多值错误。POST['image']

print(request.POST)
显示字典如下所示:

<QueryDict: {'tags': ['orion']}>
这是关于图像对象的,因为当我将其他内容作为图像传递(例如字符串)时,它工作得很好


我想还有另一种方法可以测试上传图像的功能,但有人知道为什么这不起作用吗?

Django将上传的文件与其他提交的数据分开。
标签
键存在于
request.POST
中,但
图像
应存在于
request.FILES
中。从我所看到的,您所做的是使用测试客户端测试文件上传的正确方法


.

检查表单中的enctype它必须是enctype=“multipart/form data”@Quentin如果没有表单我该怎么办?这是唯一的测试方法-视图方法
image = SimpleUploadedFile(
            'kitties.png', b'kitties_in_boxes', 'image/png')