【问题标题】:name 'ValidationError' is not defined in django form名称“ValidationError”未以 django 形式定义
【发布时间】:2021-03-25 09:12:09
【问题描述】:

如果用户输入了在注册期间已经存在的电子邮件,我会尝试限制他们。这是我得到的错误

Exception Value:    
name 'ValidationError' is not defined

用户表单

from django import forms
from django.db import models
from django.contrib.auth.forms import UserCreationForm, UserChangeForm
from .models import CustomUser 

    class CustomUserCreationForm(UserCreationForm):
            email = forms.EmailField()
        
        
            def clean(self):
                email = self.cleaned_data.get('email')
                if CustomUser.objects.filter(email=email).exists():
                    raise ValidationError("Email already exists")
                    return self.cleaned_data

【问题讨论】:

    标签: django


    【解决方案1】:

    对于 Django 3,您需要使用以下命令导入它:from django.core.exceptions import ValidationError

    对于 Django 2,文档将其命名为:forms.ValidationError("Email already exists")

    请参阅 Django 3 文档here。 请参阅 Django 2 文档here

    【讨论】:

      猜你喜欢
      • 2023-02-25
      • 2015-11-14
      • 1970-01-01
      • 2017-04-11
      • 2011-07-19
      • 1970-01-01
      • 1970-01-01
      • 2022-06-15
      • 2022-10-16
      相关资源
      最近更新 更多