我有 HTML 表单要在 Django View 中发布,并且由于一些限制,我更容易在validation
没有通常的 Django 表单类的情况下进行操作。
我使用 Django Forms 的唯一原因是输入的电子邮件字段。
是否有任何功能可以检查某物是否为 anemail
或我必须使用EmailField
来检查和验证它?
我有 HTML 表单要在 Django View 中发布,并且由于一些限制,我更容易在validation
没有通常的 Django 表单类的情况下进行操作。
我使用 Django Forms 的唯一原因是输入的电子邮件字段。
是否有任何功能可以检查某物是否为 anemail
或我必须使用EmailField
来检查和验证它?
您可以使用以下
from django.core.validators import validate_email
from django import forms
...
if request.method == "POST":
try:
validate_email(request.POST.get("email", ""))
except forms.ValidationError:
...
假设你<input type="text" name="email" />
的表格中有一个
您可以使用 django.core.validators 中的 validate_email() 方法:
>>> from django.core import validators
>>> validators.validate_email('test@example.com')
>>> validators.validate_email('test@examplecom')
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/Users/jasper/Sites/iaid/env/lib/python2.7/site- packages/django/core/validators.py", line 155, in __call__
super(EmailValidator, self).__call__(u'@'.join(parts))
File "/Users/jasper/Sites/iaid/env/lib/python2.7/site-packages/django/core/validators.py", line 44, in __call__
raise ValidationError(self.message, code=self.code)
ValidationError: [u'Enter a valid e-mail address.']