Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django-已登录用户的表单字段属性_Django_Django Authentication - Fatal编程技术网

Django-已登录用户的表单字段属性

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(

我想向其中一个表单字段添加readonly属性。这是我的forms.py文件的一部分:

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)

每个用户都有电子邮件字段。它很好用。一小时的试错。。。问题解决了。谢谢