Ber的答案-将其存储在
threadlocals中-是一个非常糟糕的主意。绝对没有理由这样做。
更好的方法是重写表单的
__init__方法以使用额外的关键字参数
request。这会将请求存储在表单中,在需要的地方,你可以从此处以干净的方法访问它。
class MyForm(forms.Form): def __init__(self, *args, **kwargs): self.request = kwargs.pop('request', None) super(MyForm, self).__init__(*args, **kwargs) def clean(self): ... access the request object via self.request ...并且在你看来:
myform = MyForm(request.POST, request=request)



