Django:查询字符串中的数组为foo [] = bar1&foo [] = bar2

时间:2018-12-14 12:18:11

标签: arrays django querystringparameter

我需要准备一个提供以下url模式的Django微服务:

http://<myserver>/getinfo/?foo[]=bar1&foo[]=bar2

这似乎是一种非常PHP的方式,但是我必须在Django中模仿它...

Django中是否存在用于设计URL和在视图中将querystring参数作为列表检索的标准方法?

1 个答案:

答案 0 :(得分:2)

wrt /“设计url”,Django的urlpatterns忽略了查询字符串(它们仅在路径上匹配),因此您在这里无需执行任何操作。

wrt /将查询字符串参数作为列表检索,Django's QueryDict已经处理过:

  

QueryDict.getlist(key,default = None)

     

使用请求的键返回数据列表。如果该键不存在且未提供默认值,则返回一个空列表。除非提供的默认值不是列表,否则保证返回列表。

注意:忘记添加Django不会自动从键中删除括号,因此您需要foos = request.GET.getlist("foo[]")(感谢Daniel Roseman)