Замените в старом проекте существующую модель Django User на мою модель User
У меня есть старый проект, в котором есть модель пользователя, созданная по умолчанию.
Далее нам было предложено изменить модель пользователя по умолчанию.
Мы переопределили модель пользователя следующим образом:
class Staff(AbstractUser):
# ... new fields ...
# no need in model
user_permissions = None
groups = None
class Meta(AbstractUser.Meta):
db_table = 'auth_user'
swappable = "AUTH_USER_MODEL"
Далее мы добавили его в файл settings.py:
# user model
AUTH_USER_MODEL = 'test.Staff'
# django authentication backend
AUTHENTICATION_BACKENDS = [
# 'django.contrib.auth.backends.ModelBackend', # Django's default authentication backend
'test.backends.ModelBackend', # Custom authentication backend
]
необходимые строки, и мы не можем начать миграцию (только повторно запустить для тестов).
ValueError: The field admin.LogEntry.user was declared with a lazy reference to 'test.staff', but app 'test' doesn't provide model 'staff'
Подскажите, пожалуйста, как правильно заменить пользователей в django.