使用电子邮件字段时,尝试提交带有无效电子邮件地址的表单会引发如下错误:
我喜欢这个:
不重新加载页面,而是根本不提交,而是显示错误
外观
这是我目前使用名称和密码(CharFields)所能完成的
“需要一个名字!” 并且“此字段为必填项”消息仅在表单提交后显示,这不像无需提交表单即可显示那样流畅。
使用电子邮件字段时,尝试提交带有无效电子邮件地址的表单会引发如下错误:
我喜欢这个:
不重新加载页面,而是根本不提交,而是显示错误
外观
这是我目前使用名称和密码(CharFields)所能完成的
“需要一个名字!” 并且“此字段为必填项”消息仅在表单提交后显示,这不像无需提交表单即可显示那样流畅。
您看到的电子邮件弹出窗口不是 django 验证。它是内置在浏览器中的 html5 电子邮件字段检查(一些较旧的浏览器不会为您执行此操作)。
而且您无法在 html5 中获得任何类型的验证,但是为了检查字段存在,您可以将required
属性添加到呈现的输入字段。
有几种方法可以在 django 中为小部件添加属性。看看如何让 Django 表单显示 html 所需的属性?并选择适合您的。
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
)
...