Djoser с DRF Ошибка: поле имени пользователя обязательно - PullRequest
0 голосов
/ 05 июля 2019

Я использую djoser с каркасом отдыха django и хочу удалить поле имени пользователя из формы создания пользователя:

settings.py:

'SERIALIZERS': {
    'user_create': 'user.serializers.UserRegistrationSerializer',
},

serializers.py:

class UserRegistrationSerializer(BaseUserRegistrationSerializer):
    class Meta(BaseUserRegistrationSerializer.Meta):
        fields = ('email', 'password')

Я получил следующую ошибку. Как вы это исправите?

TypeError at /auth/users/create
create_user() missing 1 required positional argument: 'username'

1 Ответ

0 голосов
/ 05 июля 2019

Согласно документации djoser Создание пользователя

Используйте эту конечную точку для регистрации нового пользователя. Ваш менеджер модели пользователя должен реализовать метод create_user и иметь USERNAME_FIELD и REQUIRED_FIELDS поля

Вы должны настроить свою пользовательскую модель, а не сериализаторы.

На самом деле я не распознаю используемые вами сериализаторы как принадлежащие djoser.

Дополнительные вопросы:

  • Хотите заменить username, поданный email?
...