Несколько параметров поля входа в систему для Django Rest Framework (JWT)

Как я могу переопределить django-rest-framework-jwtJSONWebTokenSerializer чтобы позволить пользователю войти через электронную почту, имя пользователя или пароль.

Я вижу это как предложенный вариант в этом выпуске github, но я не уверен, как бы я переопределил JSONWebTokenSerializer по умолчанию, так как его нет среди JWT_AUTH Настройки.

Я хочу иметь возможность предоставлять функциональность, как показано в этом вопросе SO, где вы можете разрешить пользователю Django входить в систему через любое поле, которое вы можете иметь в пользовательской таблице Custom.

1 ответ

Для тех, кто использует Django Allauth, добавление этих настроек в файл settings.py решает эту проблему.

ACCOUNT_AUTHENTICATION_METHOD=“username_email” 
ACCOUNT_EMAIL_REQUIRED = True 
ACCOUNT_UNIQUE_EMAIL = True 
ACCOUNT_USERNAME_REQUIRED = True

Все конфигурации можно найти здесь.

Другие вопросы по тегам