Создание нескольких профильных классов в Django - PullRequest
0 голосов
/ 07 января 2010

Я начинаю с django, и я хотел бы расширить базовый класс django.contrib.auth.models.User, чтобы создать свой собственный профиль (и) сайта. Здесь описано, как это сделать, понял.

Насколько я понял, вы можете указать только один класс как AUTH_PROFILE_MODULE в вашем settings.py.

Теперь, если я создам класс расширения моего класса профиля, как это

class UserProfile(models.Model):
    user = models.ForeignKey(User, unique=True)
    somefield = models.CharField()

class UserProfileExtended(UserProfile):
    extrafield = models.CharField()

тогда я не могу сделать их оба профильными классами, верно?

(я знаю, что в этом случае вы просто добавите extrafield к суперклассу и полностью отбросите UserProfileExtended. Представьте, что в UserProfileExtended столько полей, что вы действительно хотите их разделить)

Спасибо за вашу помощь!

1 Ответ

1 голос
/ 07 января 2010

Может быть только один класс профиля. Я думаю, я не понимаю сценарий, где вы хотели бы разделить их. В любом случае

AUTH_PROFILE_MODULE = "UserProfileExtended"

должен правильно обрабатывать наследование для простого примера, который вы приводите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...