Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将数组从javascript发送到Django_Javascript_Python_Json_Ajax_Django - Fatal编程技术网

将数组从javascript发送到Django

将数组从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

我有一个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('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()
对该字符串进行“解包”,以获取Python
list
对象。是否不需要json.stringify?我只是将getlist改为get,并对其进行了json.loads加载,结果大致相同。也许这会更容易迭代…就是这样。我现在有了。谢谢你们。现在我可以用两个循环完全遍历它。一个用于列表,一个用于每个目录。