Я хочу использовать поле электронной почты в качестве поля имени пользователя для моей пользовательской модели. У меня есть следующая пользовательская модель подкласса модели Django AbstractUser:
class CustomUser(AbstractUser):
....
email = models.EmailField(max_length=255, unique=True)
USERNAME_FIELD = 'email'
Но когда я запустил
python manage.py sql myapp
Я получаю следующую ошибку:
FieldError: локальное поле "email" в классах "CustomUser" сталкивается с полем аналогичного имени из базового класса "AbstractUser"
Причина, по которой я включаю свое собственное поле электронной почты, в первую очередь - добавить к ней параметр unique=True
. в противном случае я получаю:
myapp.customuser: USERNAME_FIELD должен быть уникальным. Добавить уникальный = Верно для параметров поля.
Теперь, в связи с этим:
https://docs.djangoproject.com/en/1.5/topics/db/models/#field-name-hiding-is-not-permitted
Как может достичь этого? (другой, затем называя поле "user_email" или что-то в этом роде)