На мой сайт можно войти через:Python Social Auth дублирования сообщений электронной почты для различных пользователей
- имя пользователя и пароль
- электронной почты и пароль
- Google AUTH 2
- фейсбук
Где я использую пользовательский пользовательский интерфейс django и социальный аудит python.
Проблема:
Предположим, я создаю следующий счет:
Имя пользователя: losimonassi электронной почты: [email protected]
Тогда, когда я пытаюсь войти с моим Gmail (lorenzosimonassi @ gmail.com) python social auth создает другого пользователя с тем же адресом электронной почты. Поэтому, когда я пытаюсь войти в систему с помощью своего электронного письма, система auth обнаруживает два похожих сообщения электронной почты, которые вызывают ошибку.
Я пытаюсь найти способ, когда пользователь пытается войти в систему с помощью gmail, его электронная почта проверяется на БД, и если она уже существует, процесс останавливается перенаправлением и предупреждением (я думаю, это могло бы выполняться через промежуточное ПО).
Но, конечно, проверка на БД должна проверяться только на других пользователей и обычных пользователей, чтобы не блокировать его собственный логин.
Я не хочу связывать счета.
settings.py
SOCIAL_AUTH_PIPELINE = (
'social.pipeline.social_auth.social_details',
'social.pipeline.social_auth.social_uid',
'social.pipeline.social_auth.auth_allowed',
'social.pipeline.social_auth.social_user',
'social.pipeline.user.get_username',
'social.pipeline.user.create_user',
#'social.pipeline.social_auth.associate_user',
#'social.pipeline.social_auth.load_extra_data',
'social.pipeline.user.user_details'
)
Спасибо! Я сделал небольшие изменения, он отлично работает! –