【问题标题】:Email address verification via RegEx or Django built-in通过 RegEx 或 Django 内置的电子邮件地址验证
【发布时间】:2017-03-18 01:20:54
【问题描述】:

所以我花了最后一个小时查看 dango 电子邮件地址验证的链接。我想要做的是占据def create(request) 区域。传递从request.POST['email'] 提交的电子邮件地址,在将其添加到我的数据库之前检查它是否是有效的电子邮件地址。我安装了电子邮件正则表达式。我知道 Django 有一个内置的,我可以在不破坏我的页面的情况下对它们进行编码,但它们似乎无法正常工作:当我输入一个虚假的电子邮件地址时,它不会捕捉到它。有人会给我最好的方法来编码吗?虽然我之前有一个表单发布问题,但此表单通过但不验证电子邮件

from django.shortcuts import render, redirect
from .models import User
from django.contrib import messages
import re
EMAIL_REGEX = re.compile(r'^[a-zA-Z0-9.+_-]+@[a-zA-Z0-9._-]+\.[a-zA-Z]+$')

# Create your views here.
def index(request):

    return render(request, "emailvalidation/index.html" )


def create(request):
    if request.method == 'POST':  

        User.objects.create(email = request.POST['email'] )    


        context ={

            "email": User.objects.all(),

        }

    return render(request, 'emailvalidation/success.html' ,context)

【问题讨论】:

  • 您将什么定义为虚假电子邮件?你的意思是当电子邮件不存在时?您可以通过向用户发送确认电子邮件来解决此问题。但是,任何人都可以轻松使用 10minutemail.com 之类的东西。
  • 当他们输入电子邮件时,我希望它验证 emailspot 不是空白的。他们输入的电子邮件是有效的,即任何@anthing .com
  • 但是您已经在上一个问题中使用EMAIL_REGEX.match(request.POST['email'])成功做到了这一点
  • 是的,我的最后一个问题解决了这个过程。该代码是好的代码,但它没有验证电子邮件。所以没有验证我会在最后一个问题上问你,但规则是新问题。即帖子已处理并添加到数据库中,但如果我在其中放了一封乱七八糟的电子邮件,就像“嗨”一样,它仍然可以

标签: regex django python-2.7


【解决方案1】:

我在错误的地方进行了验证。需要在模型中进行。

【讨论】:

    猜你喜欢
    • 2019-04-15
    • 2011-10-28
    • 1970-01-01
    • 2011-01-31
    • 2014-06-12
    • 1970-01-01
    • 1970-01-01
    • 2019-07-30
    • 1970-01-01
    相关资源
    最近更新 更多