【发布时间】:2013-01-28 03:03:39
【问题描述】:
如果我提出这样的要求:
$.ajax({
url: '/some/url/',
data: {
normal_list: [1,2,3],
dict_list: [{foo:'a'}, {bar:'b'}]
}
})
...那么我似乎无法使用getlist 从request.GET 中获取dict_list。这是我设置断点时看到的:
ipdb> request.GET
<QueryDict: {u'dict_list[1][bar]': [u'b'], u'normal_list[]': [u'1', u'2', u'3'], u'dict_list[0][foo]': [u'a']}>
ipdb> request.GET.getlist('normal_list[]')
[u'1', u'2', u'3']
ipdb> request.GET.getlist('dict_list[]')
[]
我如何从 django 的这个请求中得到正确的 dict_list 值?
编辑:我可以让它与dict_list: JSON.stringify([{foo:'a'}, {bar:'b'}]) 一起工作,但我希望能够以与内容无关的方式发送数据。
【问题讨论】:
-
这个请求看起来很乱。您不应该在 javascript 端序列化为字符串吗?
-
@goncalopp jQuery.ajax 接受
data的对象或字符串。 -
我会尝试使用 firebug/tamper data(如果您使用 firefox)检查上传的数据,或者将请求指向
netcat
标签: python django dictionary httprequest http-get