Я запускаю свой собственный модуль регистрации в Django на основе django.contrib.auth
.Мой регистрационный модуль будет иметь некоторые дополнительные функции и поможет мне уменьшить мою зависимость от других модулей django, которые я сейчас использую, таких как django-registration и django-emailchange.Я столкнулся с проблемой «как лучше всего сделать это» здесь.
Примечание. Все учетные записи пользователей основаны на модели django.contrib.auth.models.User
.
Когдапользователь нажимает ссылку "зарегистрироваться", запрос передается в мое представление с именем register
.У меня есть пользовательская форма, которая имеет четыре поля - имя пользователя, адрес электронной почты, пароль1 и пароль2.Форма основана на django.forms.Form
.Форма обеспечивает базовую проверку, например, passoword1 и password2 - это электронная почта;адрес электронной почты / имя пользователя не существует.
Когда данные возвращаются обратно в мое представление реестра, я вызываю метод is_valid()
формы, после чего я создаю нового пользователя, вызывая метод Manager с именемcreate_user()
в django.contrib.auth.models.UserManager
.На этом этапе мне нужно добавить больше пользовательских функций, таких как отправка электронных писем об активации и т. Д. В качестве наилучшего метода, где должна быть эта логика?Должно ли это быть в методе модели User
?Должен ли он быть там, где он сейчас - менеджер модели?Или это должно быть помещено в пользовательский save()
метод моей формы регистрации?
Спасибо.