Django - 以表单形式访问 request.session

2024-05-27

我按如下方式调用表单,然后将其传递给模板:

f = UserProfileConfig(request)

我需要能够访问表单中的 request.session...所以首先我尝试了这个:

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

无济于事。

还有其他想法吗?


尝试这个:

class UserProfileConfig(forms.Form):

    def __init__(self,request,*args,**kwargs):
        super (UserProfileConfig,self).__init__(*args,**kwargs)
        self.fields['username'] = forms.CharField(label='Username',max_length=100,initial=request.session['some_var'])

我发现这篇文章是关于动态形式 http://www.b-list.org/weblog/2008/nov/09/dynamic-forms/很有帮助。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django - 以表单形式访问 request.session 的相关文章

随机推荐