Распространение методов Django model clean() ValidationErrors в форму для регистрации пользователя

Я использую форму SignupForm от django-allauth для создания новых пользовательских объектов. Чтобы убедиться, что все данные, помещенные в базу данных, являются достоверными, я провожу большую часть проверки в методе clean() моей модели. Он вызывается вызовом self.full_clean() в методе save() моей пользовательской модели пользователя. Разместив валидацию здесь (а не в любой форме регистрации, которую я использую), я могу обеспечить лучшую целостность данных, поскольку объекты не могут быть сохранены (даже при использовании API) без предварительной очистки & valid.

Проблема, с которой я сталкиваюсь, возникает, когда я поднимаю ValidationErrors внутри метода clean() моей модели. Вместо того, чтобы правильно распространить ValidationErrors из модели в форму регистрации (которая затем красиво отобразит их в моем шаблоне в виде списка ошибок), ошибки поднимаются как обычно, вызывая падение сервера/HTTP 500 ошибку (см. ниже)traceback of ValidationError

Вот моя пользовательская модель пользователя (я переопределил многие поля по умолчанию, предоставляемые AbstractUser, чтобы настроить некоторые аспекты их функциональности):

Вот мой вид регистрации:

from allauth.account.views import SignupView

class Signup_View(SignupView):
    template_name = "pulsifi/signup.html"

Как я могу правильно распространить любые ValidationErrors, поднятые в методе модели пользователя clean() в форму, чтобы они отображались в моем списке ошибок (подобно тому, как они отображаются в форме администратора).

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