Ошибка целостности Django вместо ошибки плохого запроса

У меня есть проект DRF, использующий пользовательский пользователь, который расширяет AbstractUser, и я хочу сделать электронную почту уникальной. Я попытался изменить AbstractUser следующим образом.

class AbstractUser(AbstractBaseUser, PermissionsMixin):
"""
An abstract base class implementing a fully featured User model with
admin-compliant permissions.

Username and password are required. Other fields are optional.
"""

username_validator = UnicodeUsernameValidator()

username = models.CharField(
    _("username"),
    max_length=150,
    unique=True,
    help_text=_(
        "Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only."
    ),
    validators=[username_validator],
    error_messages={
        "unique": _("The username already exists."),
    },
)
first_name = models.CharField(_("first name"), max_length=150)
last_name = models.CharField(_("last name"), max_length=150)
email = models.EmailField(_("email address"), unique=True, error_messages={
        "unique": _("A user with that email already exists."),
    })

Он проверил дублирование электронной почты, но я получил ошибку целостности, но я хочу получить Bad Request для моего фронтенда

This is my username error (as expected)

But for my email, I got like this

Что не так, почему поля в AbstractUser выдают разные ошибки для уникального ограничения? Пожалуйста, помогите мне, заранее спасибо.

Это потому, что вы запускаете приложение django с Debug=True. Установите Debug=False в файле settings.py

Вернуться на верх