如何解决Django密码字段未使用Bootstrap属性呈现
我正在尝试在Django Accounts应用程序的注册中设置密码字段的样式。
'password1': forms.PasswordInput(attrs={'class': 'form-control','placeholder': 'Password','required': 'required'},),'password2': forms.PasswordInput(attrs={'class': 'form-control','placeholder': 'Confirm password',
我的视图呈现到下面代码中的register.html
<div class="col-12 mt-4">
{{ form.password1 }}
</div>
<div class="col-12 mt-4">
{{ form.password2 }}
</div>
</div>
但是,“密码”字段的结果未像其他字段一样设置样式。呈现的注册页面如下所示 rendered register.html page
提供以下输出的解决方法是什么? expected output
解决方法
我建议这样:请尝试这个。
方法1
password1 = forms.CharField(widget=forms.PasswordInput(attrs={'class': 'form-control','placeholder': 'Password','required': 'required'},))
password2 = forms.CharField(widget=forms.PasswordInput(attrs={'class': 'form-control','placeholder': 'Confirm password',))
方法2
使用构造函数(减少代码)
def __init__(self,*args,**kwargs):
super(SignUpForm,self).__init__(*args,**kwargs)
self.fields['username'].widget.attrs = {'class': 'form-control','required': 'required'}
self.fields['password1'].widget.attrs = {'class': 'form-control','required': 'required'}
self.fields['password2'].widget.attrs = {'class': 'form-control','required': 'required'}
,
经过研究,结果显示出默认的Django注册字段,即可以在构造函数中调整用户名,password1和password2小部件,这是工作代码
def __init__(self,**kwargs)
self.fields['username'].widget.attrs['class'] = 'form-control'
self.fields['username'].widget.attrs['placeholder'] = 'Username'
self.fields['password1'].widget.attrs['class'] = 'form-control'
self.fields['password1'].widget.attrs['placeholder'] = 'Password'
self.fields['password2'].widget.attrs['class'] = 'form-control'
self.fields['password2'].widget.attrs['placeholder'] = 'Confirm password'
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。