【发布时间】:2019-09-25 00:53:18
【问题描述】:
我需要在 django 中创建的表单中更改标签(密码 = forms.PasswordInput())。
我试过这个:
from django import forms
from django.contrib.auth.models import User
from django.contrib.auth.forms import UserCreationForm
class UserRegisterForm(UserCreationForm):
name = forms.CharField(label='نام و نام خوانوادگی', max_length=100)
email = forms.EmailField(label='ایمیل')
password1 = forms.PasswordInput(label='پسورد')
number = forms.IntegerField(label='شماره همراه')
class Meta:
model = User
fields = ['name' , 'email' , 'number','password1']
但它不起作用并且有错误: TypeError: init() 得到了一个意外的关键字参数“标签”
【问题讨论】:
-
PasswordInput是一个小部件,而不是一个表单域。所以你定义密码字段的方式是错误的。向我们展示您的整个表格。或者,如果您使用的是模型表单,请阅读 this,您将在其中了解如何覆盖模型表单上的labels。 -
@dirkgroten 我不使用模型。我使用 forms.py 并从 UserCreation 类继承类
-
"使用 forms.py" 是什么意思?我说的是“模型形式”而不是“模型”。给我们看forms.py
-
请编辑您的问题,不要在 cmets 中发布代码。无法阅读。
-
使用问题下方的“编辑”按钮将代码添加到问题中。