如何查看我的电子邮件是否在数据库中可用

时间:2017-12-09 06:56:39

标签: django python-3.x django-models django-forms django-views

我写了一个有电子邮件字段的模型。我通过管理员添加了一些电子邮件。我需要的是当我输入任何应该用我的数据库电子邮件检查的电子邮件时,如果存在它应该显示电子邮件已经存在:

models.py #在我的数据库中已有一些数据

class Friend(models.Model):
    email = models.EmailField(max_length=100)

    def __str__(self):
        return self.email

forms.py

class FriendForm(forms.ModelForm):
    class Meta:
        model = Friend
        fields = ['email']

views.py

def check(request):
    form = FriendForm(request.POST or None)
    if form.is_valid():
        form = Friend.objects.filter(**form.cleaned_data)
    context = {
        'form': form
    }
    return render(request, "one.html", context)

我导入了所有东西。当我尝试这个代码时,它直接渲染到one.html。我需要的是它应该检查数据库中是否有电子邮件,然后才能呈现。

1 个答案:

答案 0 :(得分:1)

class Friend(models.Model):
     email = models.EmailField(max_length=100,unique=True,error_messages={'error':'The Email already exists'})

您可以将模型更改为此。

if form.is_valid():
    form = Friend.objects.filter(**form.cleaned_data)
else:
    redirect('to_some_page')