Django-已登录用户的表单字段属性
我想向其中一个表单字段添加readonly属性。这是我的forms.py文件的一部分:Django-已登录用户的表单字段属性,django,django-authentication,Django,Django Authentication,我想向其中一个表单字段添加readonly属性。这是我的forms.py文件的一部分: class SiteAddFormFull(forms.ModelForm): def __init__(self, *args, **kwargs): super(SiteAddFormFull, self).__init__(*args, **kwargs) self.fields['group'] = forms.ModelChoiceField(
class SiteAddFormFull(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(SiteAddFormFull, self).__init__(*args, **kwargs)
self.fields['group'] = forms.ModelChoiceField(
queryset=Group.objects.filter(is_active=True), initial='Podstawowy',
help_text="<div id='group'><ul><li>Sample text</b></li></ul></div>",
label="Rodzaj wpisu")
url = forms.URLField(widget=forms.TextInput(attrs={'readonly': 'readonly'}),
label='Adres internetowy')
kod = forms.CharField(label="Kod premium", required=False)
user = forms.CharField(label="Nazwa użytkownika",
widget=forms.TextInput(attrs={'readonly': 'readonly'}))
if user_is_authenticated:
email = forms.EmailField(label="Email adress",
widget=forms.TextInput(attrs={'readonly': 'readonly'}))
name = forms.CharField(widget=forms.TextInput(attrs={'style': 'min-width:30%'}))
class SiteAddFormFull(forms.ModelForm):
定义初始化(self,*args,**kwargs):
super(SiteAddFormFull,self)。\uuuuuu初始值(*args,**kwargs)
self.fields['group']=forms.ModelChoiceField(
queryset=Group.objects.filter(is_active=True),initial='Podstawowy',
help_text=“- 示例文本”
”,
label=“Rodzaj wpisu”)
url=forms.URLField(widget=forms.TextInput(attrs={'readonly':'readonly'}),
label='Adres internetowy')
kod=forms.CharField(label=“kod premium”,必填项=False)
user=forms.CharField(label=“Nazwa użytkownika”,
widget=forms.TextInput(attrs={'readonly':'readonly'}))
如果用户\u经过\u身份验证:
email=forms.EmailField(label=“电子邮件地址”,
widget=forms.TextInput(attrs={'readonly':'readonly'}))
name=forms.CharField(widget=forms.TextInput(attrs={'style':'minwidth:30%}))
我想将readonly属性添加到电子邮件字段。我不知道如何在这里使用身份验证系统。我应该放什么来代替用户\u进行身份验证?谢谢你的提示。好的。我补充说:
email = self['email'].value()
if email is not None:
self.fields['email'].widget.attrs.update({'readonly': 'readonly'})
下面的super(SiteAddFormFull,self)。\uuuu init\uuuu(*args,**kwargs)
每个用户都有电子邮件字段。它很好用。一小时的试错。。。问题解决了。谢谢