Как правило, я предпочитаю метод, я не люблю трогать пользователя Django просто для безопасности.Таким образом, вы знаете, что не будете конфликтовать с чем-либо в пользовательской модели, и это проясняет, какой код является структурным кодом, а какой - вашим кодом.
Обычно я не называю это MyAppUser
но чаще всего что-то вроде UserSettings
.Я не хочу, чтобы мои пользовательские классы были перепутаны как замены для объекта User
, но я просто предоставляю больше информации.
Обычно в приложениях у вас есть внешние ключи для User
повсюду,поэтому я все еще использую класс Django User
для всех этих целей.Я нахожу, что это делает вещи чище.
Я попытался создать подкласс User
и обнаружил, что это не дало мне много, и в итоге запутал вещи, больше, чем они должны были быть.