【问题标题】:Transform multiple values from url to json in Django在Django中将多个值从url转换为json
【发布时间】:2017-07-25 23:02:15
【问题描述】:

我有这个网址:

http://example.com?variable=1&variable=2&a=text

我想将这些值转换为 JSON。

我试过了:

data = json.dumps(request.GET)

但我得到{"variable": "2", "a": "text"}

它似乎适用于单个值,但不适用于多个值。

如何从转换后的 URL 中获取所有值?

【问题讨论】:

标签: python json django url


【解决方案1】:

urlparse 模块可以为您做到这一点。

结果:

from urlparse import urlparse, parse_qs

o = urlparse('http://example.com?variable=1&variable=2&a=text')
qs = parse_qs(o.query)
print(qs)

结果:

{'variable': ['1', '2'], 'a': ['text']}

【讨论】:

  • 由于某种原因,我有这个错误(anaconda2/lib/python2.7/urlparse.py in urlsplit,第 182 行):'function' object has no attribute 'find' 所以我不能尝试现在...正在寻找解决该错误的方法。
  • 解决了,但我得到了这个:{'a': ['1', "2'>>"], 'search_txt': ['T']}
  • 它似乎有效。我得到这个结果的原因似乎是 request.get_full_path。它将返回类似: > 的 注意:我正在使用 django
  • 已解决 qs = parse_qs(request.META['QUERY_STRING']) data = json.dumps(qs) 结果:{"variable": ["1", "2"], "a": ["text"]}
猜你喜欢
  • 1970-01-01
  • 2012-03-27
  • 2013-07-11
  • 2015-09-02
  • 2015-11-20
  • 2013-07-03
  • 1970-01-01
  • 1970-01-01
  • 2017-03-16
相关资源
最近更新 更多