我有一个对django视图的AJAX请求调用(使用JQuery)。它发送以查看此类数据:
{"cityId": 1, "products_with_priority": [{"id": 1, "priority": 1}, {"id": 2, "priority": 2}, {"id": 3, "priority": 3}, {"id": 4, "priority": 4}, {"id": 5, "priority": 5}]}
在我的django看来,我试图得到这样的列表:
def my_view(request):
city_id = request.POST.get('city_id')
products_priorities = request.POST.getlist("products_with_priority")
其中city_id
返回1
而products_with_priority
返回空数组。
如何可能从请求接收字典数组?
确保您的数据类型为json
,并stringify您的数组:
dataType: 'json',
data: {'cityId': 1, 'products_with_priority': JSON.stringify([{"id": 1, "priority": 1}, {"id": 2, "priority": 2}, {"id": 3, "priority": 3}, {"id": 4, "priority": 4}, {"id": 5, "priority": 5}])}
然后在Django视图中使用(标准Python库)json
的loads()
方法:
products_priorities = json.loads(request.POST.get('products_with_priority'))