【发布时间】:2017-02-27 08:12:24
【问题描述】:
由于 Django 测试客户端仅接受 data={} 作为输入,我无法将 dict 列表(即 data=[{},{},{}] 传递给它。有什么解决办法吗?
【问题讨论】:
-
您希望如何将其发布到视图中?
标签: django python-2.7
由于 Django 测试客户端仅接受 data={} 作为输入,我无法将 dict 列表(即 data=[{},{},{}] 传递给它。有什么解决办法吗?
【问题讨论】:
标签: django python-2.7
以上解决方案都没有帮助我,客户总是在转储这个字典列表时遇到问题,但我推荐这里提出的解决方案:
https://stackoverflow.com/a/39155038/16062106
在你的情况下,它会是这样的:
response = client.generic("GET", URL, data=json.dumps(data), content_type="application/json",)
【讨论】:
这行得通:
response = client.post(url, json.dumps(data), content_type='application/json')
【讨论】:
您可以在字典中将值作为列表传递:
data={"key": [{"key":"value"}, {"key":"value"}]}
您也可以使用 MultiValueDict 作为值。
你也可以作为列表传递
import requests
data = [{"key":"value"}, {"key":"value"}]
a = requests.post('http://url', data)
【讨论】: