Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 29, 2016 07:03:53

balalay12
Зарегистрирован: 2014-07-28
Сообщения: 92
Репутация: +  4  -
Профиль   Адрес электронной почты  

Расширение модели user

Всем привет.

Пытался расширить модель User
Модель

class MyUser(AbstractUser):
    height = models.IntegerField(verbose_name=u'Рост', blank=True)

Settings
AUTH_USER_MODEL = 'base.MyUser'

ForeignKey в моделях
user = models.ForeignKey(settings.AUTH_USER_MODEL)

При миграции ошибка ValueError: Lookup failed for model referenced by field base.BodySize.user: base.MyUser
Если удалить все файлы миграций и сделать миграцию, то ошибка такая django.db.utils.ProgrammingError: (1146, “Table ‘cachalka.base_myuser_user_permissions’ doesn't exist”)

Пробовал делать на чистую БД с удалением всех файлов миграций, но тогда джанга не создает таблицу django_session. Ошибка “Table ‘c_test.django_session’ doesn't exist”.

Подскажите как быть.

Отредактировано balalay12 (Янв. 29, 2016 07:05:09)

Офлайн

#2 Янв. 29, 2016 08:28:12

SirJorah
Зарегистрирован: 2015-04-21
Сообщения: 41
Репутация: +  2  -
Профиль   Отправить e-mail  

Расширение модели user

Уважаемый коллега, расширение модели user достаточно легко реализуется через отдельное приложение. Глюков вроде не отмечено. Посмотрите, как это удалось сделать мне:
https://github.com/nsedenkov/django-knowcheck
Смотрите главным образом в папке userprofile. В файле admin.py видно, как перерегистрируется модель пользователя. Может, это не единственно возможное решение, но оно сработало.

Офлайн

#3 Янв. 29, 2016 09:49:33

balalay12
Зарегистрирован: 2014-07-28
Сообщения: 92
Репутация: +  4  -
Профиль   Адрес электронной почты  

Расширение модели user

Да я знаю об этом способе. Но хотелось бы знать почему тот, которым я сделал не работает.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version