Задать вопрос
@NyxDeveloper

Почему makemigrations в Django игнорирует поля миксина для модели?

Я пишу собственный модуль авторизации, который хочу использовать всвоих проектах. Сейчас занимаюсь кастомизацией профиля и решил попробовать одну идею, но она не работает и я хочу знать почему. Я хочу унаследовать модель пользователя от внешнего класса, чтобы у него появились дополнительные поля.
def get_profile():
    class DefaultProfile:
        pass

    try:
        profile_class = settings.DJAUTH['profile_model']
        if profile_class:
            return profile_class
        return DefaultProfile
    except KeyError:
        return DefaultProfile


profile_class = get_profile()


class User(AbstractBaseUser, PermissionsMixin, profile_class):
    ...

В settings я планировал прописать класс, от которого должен наследоваться пользователь.
class CustomProfile:
    custom_field = models.TextField()
    custom_field2 = models.TextField()

Такая схема не работает, даже не смотря на то, что при обращении как к классу, так и к его экземпляру, наследуемые поля у него есть, но почему-то они не создаются при миграции.
В чем проблема? Я не понимаю каких-то глобальных основ?
  • Вопрос задан
  • 44 просмотра
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы