我想采用一个现成的形式(即从django.Forms.form
经过验证的绑定数据派生的类的对象)并对其进行 urlencode,就好像它是使用 GET 提交的一样。有内置的方法吗?
为了说明我为什么要问这个问题,以及为什么我不能只打电话urlencode
,这个的输出应该是“ box=on
”。
from django import forms
from urllib import urlencode
class DemoForm(forms.Form):
box = forms.BooleanField(required=False)
instance = DemoForm({"box": True}) # it's irrelevant how this data is supplied
instance.is_valid()
print "encoded:", urlencode(instance.cleaned_data)
实际上它是“ box=True
”,因为urlencode
它没有对格式进行编码,而是对已清理的值进行编码(相信我,BooleanField
这是最简单的情况)。
所以我要求一种方法来对表单进行编码,就好像它是一个 GET 字符串一样。正确的 GET 字符串。