有没有办法将样式添加到用户名字段-django表单中,我尝试过使用self.fields['username'].widget.attrs.update({'class':'form-control','placeholder':'Username','style': 'font-size:24px;text-align: center;'})
,但它不起作用,为什么
class UserForm(forms.ModelForm):
password = forms.CharField(required=True,label=' pass',widget=forms.PasswordInput(attrs={'class': 'form-control','placeholder':' pass ','style': 'font-size:24px;text-align: center;'}))
first_name = forms.CharField(required=True,label=' first name ',widget=forms.TextInput(attrs={'class': 'form-control','placeholder':' first name ','style': 'font-size:24px;text-align: center;'}) )
last_name= forms.CharField(required=True,label=' 2nd name ',widget=forms.TextInput(attrs={'class': 'form-control','placeholder':' 2nd name ','style': 'font-size:24px;text-align: center;'}) )
email= forms.EmailField(required=True,label=' email ',widget=forms.EmailInput(attrs={'class': 'form-control','placeholder':' email ... youremail@email.com','style': 'font-size:24px;text-align: center;'}) )
class Meta(UserCreationForm.Meta):
model = User
fields = UserCreationForm.Meta.fields + ('username','first_name','last_name','email','password')
def __init__(self, *args, **kwargs):
super(UserForm,self).__init__(*args,**kwargs)
self.fields['username'].widget.attrs.update({'class':'form-control','placeholder':'Username','style': 'font-size:24px;text-align: center;'})
您正在重写Meta
类的构造函数。而不是Form
,因此您应该在以下位置实现它:
class UserForm(forms.ModelForm):
password = forms.CharField(required=True,label=' pass',widget=forms.PasswordInput(attrs={'class': 'form-control','placeholder':' pass ','style': 'font-size:24px;text-align: center;'}))
first_name = forms.CharField(required=True,label=' first name ',widget=forms.TextInput(attrs={'class': 'form-control','placeholder':' first name ','style': 'font-size:24px;text-align: center;'}) )
last_name= forms.CharField(required=True,label=' 2nd name ',widget=forms.TextInput(attrs={'class': 'form-control','placeholder':' 2nd name ','style': 'font-size:24px;text-align: center;'}) )
email= forms.EmailField(required=True,label=' email ',widget=forms.EmailInput(attrs={'class': 'form-control','placeholder':' email ... youremail@email.com','style': 'font-size:24px;text-align: center;'}) )
# constructor of theUserForm,notMeta
def__init__(self, *args, **kwargs):
super().__init__(*args,**kwargs)
self.fields['username'].widget.attrs.update({'class':'form-control','placeholder':'Username','style': 'font-size:24px;text-align: center;'})
class Meta(UserCreationForm.Meta):
model = User
fields = UserCreationForm.Meta.fields + ('username','first_name','last_name','email','password')