Django:将POST请求参数转换为查询字符串

时间:2011-04-08 08:53:53

标签: python django query-string

根据主题,我收到了POST请求。我想将它转换为等效的GET请求并将其传递给模板(因此我可以在点击排序列标题中将其用作href目标)。

是否有预先制作好的方法,或者我需要自己动手吗?

干杯, ALF

更新

这是我最终使用的。我需要request.REQUEST,所以request.POST.urlencode没有删除它,而request.REQUEST没有urlencode。

import urllib
def buildqs(request):
    "Builds a GET-style query string form http-request"
     #also request.POST.urlencode is possible - 
     #Sadly, request.REQUEST does not have urlencode
     return  urllib.urlencode(request.REQUEST)+"&"

3 个答案:

答案 0 :(得分:8)

使用

request.POST.urlencode()

答案 1 :(得分:6)

使用标准库urllib.urlencode。 e.g。

>>> import urllib
>>> urllib.urlencode({'a': 1, 'b': 2})
'a=1&b=2'

答案 2 :(得分:1)

来自the docs

request.META['QUERY_STRING']