Create_user() в пользовательском менеджере или метод save() в пользовательской модели Django для обработки поля перед созданием новой записи?
У меня есть пользовательская модель Django с методом save(), который проверяет, что self.pk имеет значение None и выполняет некоторую дополнительную обработку поля перед созданием новой пользовательской записи. Это правильное место, чтобы поместить это, или это должно войти в метод create_user() пользовательского менеджера пользователей? Есть ли разница?
1 ответ
Смысл методов save() и create_user() - сохранить объект в базе данных. Разница в том, что метод save() должен сначала создать экземпляр объекта, а create_user() автоматически создать объект и сохранить в базе данных. Нет абсолютно правильного пути. Вы можете использовать оба, как вы хотите. Результаты обоих методов одинаковы, добавьте объект в базу данных.