Django связать существующего пользователя с social_user - PullRequest
0 голосов
/ 09 февраля 2020

Я использую Django, Django OAuth Toolkit ( документы ) и social-auth-app- django ( документы ). Авторизация работает отлично. Но теперь меня интересует, как я могу создать ассоциацию между пользователем, зарегистрированным в Django OAuth Toolkit, и пользователем, который решил войти в систему через социальную сеть.

Например, пользователь зарегистрировался в напишите 'foo@bar.com' и затем решите связать учетную запись социальной сети (с тем же адресом электронной почты) со своей учетной записью, чтобы использовать учетную запись социальной сети для быстрого входа.

Мои конфиги для social-auth трубопроводы:

SOCIAL_AUTH_PIPELINE = (
    'social_core.pipeline.social_auth.social_details',
    'social_core.pipeline.social_auth.social_uid',
    'social_core.pipeline.social_auth.social_user',
    'social_core.pipeline.user.get_username',
    'social_core.pipeline.social_auth.associate_by_email',
    <my own pipeline for creating user>
    # 'social_core.pipeline.user.create_user',
    'social_core.pipeline.social_auth.associate_user',
    'social_core.pipeline.social_auth.load_extra_data',
    'social_core.pipeline.user.user_details',
)
...