我按如下方式调用表单,然后将其传递给模板:
f = UserProfileConfig(request)
字符串
我需要能够访问表单中的请求会话。。所以我先试了这个
class UserProfileConfig(forms.Form):
def __init__(self,request,*args,**kwargs):
super (UserProfileConfig,self).__init__(*args,**kwargs)
self.tester = request.session['some_var']
username = forms.CharField(label='Username',max_length=100,initial=self.tester)
型
我认为这不起作用,因为与设置用户名charfield相比,构造表单的时间更长。
接下来,我尝试了这个:
class UserProfileConfig(forms.Form):
def __init__(self,request,*args,**kwargs):
super (UserProfileConfig,self).__init__(*args,**kwargs)
self.a_try = forms.CharField(label='Username',max_length=100,initial=request.session['some_var'])
username = self.a_try
型
但毫无结果。
还有其他想法吗
3条答案
按热度按时间zsohkypk1#
试试这个:
字符串
我觉得这篇关于dynamic forms的文章很有帮助。
wko9yo5t2#
我很惊讶Django在表单中使用session是如此的困难。有时候我们真的需要在表单中使用会话数据来有效字段。
我创建一个小项目可以解决这个问题。django-account-helper
示例代码:
字符串
2admgd593#
iN视图
字符串
表格中的数量
型