【问题标题】:python/django validate emailpython/django 验证电子邮件
【发布时间】:2018-05-13 03:50:38
【问题描述】:

我想在 django 中验证一个电子邮件地址,我正在使用 validate_email,这是我编写的函数。

def check_email(self, email):
    # import pdb; pdb.set_trace()
    import re
    try:
        return validate_email(email)
    except:
        return False

这里是这个函数被调用的地方

    deco = mapped_data['email_receiving']
    email = deco.encode('ascii', 'ignore')
    if not self.check_email(email):
       return Response({"errors": {"error": ["Incorrect email address!"]}}, status=status.HTTP_400_BAD_REQUEST)

验证似乎有问题,即使电子邮件正确也返回 404,有什么帮助吗?

【问题讨论】:

  • 这个 check_email 是在哪里定义的?是在上课吗?
  • @RajKris,是的,它在一个视图集类中,使用 DRF
  • 也许尝试在 except 子句中打印异常。可以让您深入了解引发了哪些异常。
  • except: return False 是不知道哪里出了问题的可靠方法。裸除子句实际上应该是非法的 FWIW。此外,如果没有validate_email 的定义,也没有应该 传递的电子邮件值,就不可能为您提供帮助。

标签: python django validation email


【解决方案1】:

出于实际目的,可以使用现成的 EmailValidator: https://docs.djangoproject.com/en/1.11/ref/validators/#emailvalidator

如果是出于学习目的,请宣布:我可能会为此或其他东西找到一个正则表达式。

【讨论】:

猜你喜欢
  • 2017-02-20
  • 2019-08-29
  • 2012-08-10
  • 2018-04-15
  • 1970-01-01
  • 2020-04-05
  • 2016-01-22
  • 2019-03-27
  • 2021-01-30
相关资源
最近更新 更多