django:引发类似于 EmailField 的错误
django: raise an error similar to EmailField
使用电子邮件字段时,尝试提交包含无效电子邮件地址的表单会引发错误,如下所示:
我喜欢这个:
不重新加载页面,而是根本不提交而是显示错误
外观
这是我目前可以使用名称和密码 (CharFields) 完成的工作
"A name is needed!"和"This field is required"消息是在提交表单后才显示的,不如不提交表单就显示的流畅。
您看到的电子邮件弹出窗口不是 Django 验证。它是内置浏览器 html5 电子邮件字段检查(一些旧浏览器不会为你做)。
并且您无法在 html5 中获得任何类型的验证,但是为了检查字段显示,您可以将 required
属性添加到呈现的输入字段。
在 django 中有几种方法可以为小部件添加属性。查看适合您的 How do I get Django forms to show the html required attribute? 和 select。
kmmbvnr 将我带到了我要找的地方。要添加我正在寻找的验证类型,请添加类似于以下的代码:
class UserForm(forms.ModelForm):
...
username = forms.CharField(
widget=forms.TextInput(attrs={'required': 'true'}),#HERE
)
password = forms.CharField(
widget=forms.PasswordInput(attrs={'required': 'true'}),#OR HERE
)
...
使用电子邮件字段时,尝试提交包含无效电子邮件地址的表单会引发错误,如下所示:
我喜欢这个:
不重新加载页面,而是根本不提交而是显示错误
外观
这是我目前可以使用名称和密码 (CharFields) 完成的工作
"A name is needed!"和"This field is required"消息是在提交表单后才显示的,不如不提交表单就显示的流畅。
您看到的电子邮件弹出窗口不是 Django 验证。它是内置浏览器 html5 电子邮件字段检查(一些旧浏览器不会为你做)。
并且您无法在 html5 中获得任何类型的验证,但是为了检查字段显示,您可以将 required
属性添加到呈现的输入字段。
在 django 中有几种方法可以为小部件添加属性。查看适合您的 How do I get Django forms to show the html required attribute? 和 select。
kmmbvnr 将我带到了我要找的地方。要添加我正在寻找的验证类型,请添加类似于以下的代码:
class UserForm(forms.ModelForm):
...
username = forms.CharField(
widget=forms.TextInput(attrs={'required': 'true'}),#HERE
)
password = forms.CharField(
widget=forms.PasswordInput(attrs={'required': 'true'}),#OR HERE
)
...