我有一个自定义用户模型,并且我正在使用django-allauth进行社交注册和登录。当一个已经使用电子邮件注册过的用户使用社交账号登录时,我尝试将现有用户连接到新的社交账号。我在这个链接中找到了解决方法。
def pre_social_login(self, request, sociallogin):
user = sociallogin.account.user
if user.id:
return
try:
customer = Customer.objects.get(email=user.email)
except Customer.DoesNotExist:
pass
else:
perform_login(request, customer, 'none')
但是当我尝试通过社交账户登录时,出现了错误。
RelatedObjectDoesNotExist at /accounts/facebook/login/callback/
SocialAccount has no user.
任何帮助将不胜感激。
我也意识到这存在安全问题。但是我仍然想尝试一下。