Django-allauth - Делает номер телефона необязательным для входа в систему SocialLogin

Я использую django-allauth в своем проекте и настроил Google в качестве поставщика SocialAuth. У меня есть пользовательский приемник сигналов, который обновляет номер телефона в учетной записи Socialauth после регистрации пользователя. Но в настоящее время система выдает ошибку, когда пользователь входит в систему через SocialAuth, если в его учетной записи нет номера общедоступного телефона. Я получаю сообщение об ошибке - KeyError 'phone' по адресу - allauth/account/internal/flows/phone_verification.py - строка 46.

Это мое отношение к делу settings.py:

ACCOUNT_LOGIN_METHODS = {"phone", "email", "username"}
ACCOUNT_SIGNUP_FIELDS = [
    "phone*",
    "email*",
    "username*",
    "password1",
    "password2"
]

Как я могу сообщить SocialAuthAdapter, что номер телефона является необязательным и может отсутствовать там?

У меня есть идея, если номер телефона необязателен, вы можете выполнить следующую настройку. Я сообщаю allauth, что номер телефона необязателен.

ACCOUNT_SIGNUP_FIELDS = [
    "phone",  # <-- remove the asterisk (*)
    "email*",
    "username*",
    "password1",
    "password2"
]
Вернуться на верх