将数组从javascript发送到Django
我有一个javascript对象数组。将数组从javascript发送到Django,javascript,python,json,ajax,django,Javascript,Python,Json,Ajax,Django,我有一个javascript对象数组。 Arr=[0:{k;v},1:{k,v}]etc。。。里面有很多领域 我很难把它们送到Django 我尝试过使用JSON.stringify并将其发送到django,然后使用getlist和get进行检索 问题是我得到了一个包含两个字典的列表,但我不知道如何遍历该列表 当前代码通过以下方式将数组发送到Django: {'data[]': JSON.stringify(arr)} req = json.loads( request.POST.get('da
Arr=[0:{k;v},1:{k,v}]
etc。。。里面有很多领域
我很难把它们送到Django
我尝试过使用JSON.stringify
并将其发送到django,然后使用getlist
和get
进行检索
问题是我得到了一个包含两个字典的列表,但我不知道如何遍历该列表
当前代码通过以下方式将数组发送到Django:
{'data[]': JSON.stringify(arr)}
req = json.loads( request.POST.get('data[]', None) )
for each_row in req:
for k, v in each_row.items():
print(k, v)
在Django:
req = request.POST.getlist('data[]', None)
我打印报表时得到的结果是:
[{dict of key,value pairs},{dict of key-value pairs}]
我不知道如何遍历字典列表,检索键值对并将它们分开。在注释的帮助下解决了这个问题 我没有使用.getlist,而是使用.get并将其包装在json.loads()中 从那里,我可以通过以下方式查看:
{'data[]': JSON.stringify(arr)}
req = json.loads( request.POST.get('data[]', None) )
for each_row in req:
for k, v in each_row.items():
print(k, v)
[0:{k;v},1:{k,v}]
。这不是一个有效的列表,它看起来像一个dict。您的意思是[{0:{k;v},1:{k,v},…]
?可能我误解了,但您发送的是字符串列表吗?然后Django接收到一个字符串,您需要使用json.loads()
对该字符串进行“解包”,以获取Pythonlist
对象。是否不需要json.stringify?我只是将getlist改为get,并对其进行了json.loads加载,结果大致相同。也许这会更容易迭代…就是这样。我现在有了。谢谢你们。现在我可以用两个循环完全遍历它。一个用于列表,一个用于每个目录。