Я расширяю пользовательскую модель django, как описано в dev doc. Я не буду хранить большинство исходных функций модели пользователя, поэтому я расширяю класс AbstractUser. Я определил в settings.py:
AUTH_USER_MODEL = 'myapp.CustomUser'
Мой класс пользователя:
class CustomUser(AbstractUser):
custom_field = models.ForeignKey('OtherModel')
objects = UserManager()
Кажется, что все работает нормально, но когда я пытаюсь заставить его управлять сайтом администратора:
admin.site.register(CustomUser, UserAdmin)
Я получаю эту ошибку на странице создания пользовательского CustomUser (после проверки формы подтверждения пароля):
AttributeError: Manager isn't available; User has been swapped for 'myapp.CustomUser'
Дело в том, что мне нужна эта модель, управляемая сайтом администратора, чтобы иметь тот же процесс создания, что и с исходной моделью пользователя (двухэтапный процесс с проверкой пароля).