django表单小部件编号输入
我的表单中有下面的代码。py我试图让手机上的小部件显示一个错误,如果输入的不是数字,但它不起作用。其他一切都可以。type=number没有在表单上显示错误的原因是什么django表单小部件编号输入,django,django-forms,Django,Django Forms,我的表单中有下面的代码。py我试图让手机上的小部件显示一个错误,如果输入的不是数字,但它不起作用。其他一切都可以。type=number没有在表单上显示错误的原因是什么 class UserProfileForm(forms.ModelForm): class Meta: model = UserProfile exclude = ('user',) widgets = { 'first_name': form
class UserProfileForm(forms.ModelForm):
class Meta:
model = UserProfile
exclude = ('user',)
widgets = {
'first_name': forms.TextInput(attrs={'maxlength':100, 'required': True}),
'last_name': forms.TextInput(attrs={'maxlength': 100, 'required': True}),
'phone': forms.NumberInput(attrs={'minlength': 10, 'maxlength': 15, 'required': True, 'type': 'number',}),
'date_of_birth': forms.DateInput(attrs={'minlength': 10, 'maxlength': 10, 'required': True}),
'country': CountrySelectWidget(attrs={'country': 'CountrySelectWidget'}),
}
我试图让手机上的小部件在输入错误时显示错误
不是数字,但它不起作用
我怀疑您的电话号码字段在您的模型中没有定义为整数字段,如果是,验证检查将确保未输入非整数数据
基于这一假设,您应该超越领域,而不是小部件。使用meta属性或明确定义字段
class UserProfileForm(forms.ModelForm):
phone = forms.IntegerField(validators = [custom_validator,])
它还允许您在需要时使用自定义验证器。您在文档中读过吗?@ettanany我已经读过了。你能建议我怎样才能得到表格来验证输入吗?