Javascript 如何在金字塔中处理已发布的JS数组

Javascript 如何在金字塔中处理已发布的JS数组,javascript,jquery,python,pyramid,Javascript,Jquery,Python,Pyramid,我有一个AJAX请求: var groupName = $('#group-input').val(); var cidArray = []; $("#sortWrapper .contact-wrapper").children('.is-checked').each(function() { cidArray.push($(this).attr('cid')); }); $.ajax({ type: "POST", url: "/ajax/cre

我有一个AJAX请求:

var groupName = $('#group-input').val();
var cidArray = [];

$("#sortWrapper .contact-wrapper").children('.is-checked').each(function() {
        cidArray.push($(this).attr('cid'));
});

$.ajax({     
    type: "POST",
    url: "/ajax/create/",
    data: {group_name: groupName, group_user_id: cidArray},
    cache: false,
    success: function(result) {
        alert(groupName); // These both alert the proper values
        alert(cidArray);
    }
});
将数据发布到金字塔中的处理程序。有关部分包括:

group_name = request.POST.get('group_name', None)
group_user_id = request.POST.getall('group_user_id')

for index,uid in enumerate(group_user_id):
    # perform actions on each user...
    print uid
我收到预期的
组名
;但是,我在接收来自JS数组的值时遇到了问题
cidaray
。数组按预期填充,但当我需要使用
group\u user\u id
键检索这些值时,就会出现问题

我似乎只能从上面得到一个空列表
[]
,或者当使用不同的语法时:

request.POST.get('group_user_id', [])
它默认为空列表

注:不用说,…中uid的前面
尚未测试或完善,但如果可能,我希望我的
组用户id
的最终结果是
Cidaray
中最初存在的那些值的列表


非常感谢你的帮助。谢谢。

所以,在经历了无意识的辛苦和痛苦之后,我发现了如何解决这个问题:

而不是

request.POST.getall('group_user_id') # This is wrong
我需要:

request.POST.getall('group_user_id[]') # This works
getall
检索一个键下的所有值,
[]
处理它是一个数组的事实。其他一切都没变


希望这能在某些方面帮助到别人

所以,在经历了无意识的辛劳和痛苦之后,我发现了如何解决这个问题:

而不是

request.POST.getall('group_user_id') # This is wrong
我需要:

request.POST.getall('group_user_id[]') # This works
getall
检索一个键下的所有值,
[]
处理它是一个数组的事实。其他一切都没变


希望这能在某些方面帮助到别人

会有帮助吗?它使用req.json\u body

会有帮助吗?它使用req.json\u body

数据的内容类型是什么?POST只处理表单编码的数据,而不是jsonEach。添加到cidArray的值是一个数字。我的目标是将这个数组(一定数量的数值)传递给我的python代码,以便在将来的操作中使用每个数组。我的印象是,这是发布数据的正确语法。如上所述,我还有一个名为groupName的字符串(可以说,它在Python代码中被成功捕获)。这有帮助吗?数据的内容类型是什么?POST只处理表单编码的数据,而不是jsonEach。添加到cidArray的值是一个数字。我的目标是将这个数组(一定数量的数值)传递给我的python代码,以便在将来的操作中使用每个数组。我的印象是,这是发布数据的正确语法。如上所述,我还有一个名为groupName的字符串(可以说,它在Python代码中被成功捕获)。这有帮助吗?如果我可以提供一个提示的话。如果您想查看web应用程序接收数据的方式,请查看您喜爱的浏览器的“网络”选项卡中的请求,或者,您可以随时记录重新请求。str(请求)将为您提供整个http消息。实际上,这就是我在网络选项卡中查找此答案所做的工作(尽管浪费了太多时间)。但我不知道str(请求)。我将来一定会利用这一点。谢谢你的建议!是的,显然不要在生产中这样做,但是当你需要它的时候它很方便:)所以,如果我可以提供一个提示。如果您想查看web应用程序接收数据的方式,请查看您喜爱的浏览器的“网络”选项卡中的请求,或者,您可以随时记录重新请求。str(请求)将为您提供整个http消息。实际上,这就是我在网络选项卡中查找此答案所做的工作(尽管浪费了太多时间)。但我不知道str(请求)。我将来一定会利用这一点。谢谢你的建议!是的,显然在生产中不要这样做,但当你需要它时,它很方便:)