С Django 1.5 и внедрением пользовательских моделей модель AUTH_PROFILE_MODULE
стала устаревшей. В моем существующем приложении Django я использую модель User
, и у меня также есть модель Profile
с внешним ключом для User
и сохранение других сведений о пользователе в профиле. В настоящее время используется AUTH_PROFILE_MODULE
, и для него установлено значение "app.profile".
Очевидно, что мой код имеет тенденцию делать много user.get_profile()
, и теперь это должно исчезнуть.
Теперь я могу создать новую пользовательскую модель (только с расширением моей модели профиля User
), но затем во всех других местах, где у меня теперь есть внешний ключ для пользователя, также нужно будет изменить... так что это будет большая миграция в моем реальном сервисе.
Есть ли какой-либо способ - и без миграции модели - и только путем создания/переопределения функции get_profile()
с чем-то вроде my_user.userprofile_set.all()[0]
) где-нибудь?
Кто-нибудь, кто пошел по этому пути и может делиться идеями или опытом?
Если я снова сделаю эту услугу - очевидно, не будет идти так, но с полу-большой живой системой производства я открыт для коротких сокращений: -)