2 回答

TA贡献1873条经验 获得超9个赞
我没有正确检查情况。我尝试存储的电子邮件已经在account_emailaddress 上注册,该表对 email 列具有唯一约束,因此我无法保存来自其他 socialaccount_socialaccount(用于存储来自社交网络的注册用户的表)的相同电子邮件。从 account_emailaddress 中删除条目可以解决该问题。
在那之后,我在 /accounts/linkedin_oauth2/login/callback/ 得到了 ConnectionRefusedError,通过在 settings.py 上编码得到解决
ACCOUNT_EMAIL_VERIFICATION = 'none'
正如那边的州https://github.com/pennersr/django-allauth/issues/1740。

TA贡献1850条经验 获得超11个赞
Allauth 提供了通过EmailAddress
对象为单个用户存储多封电子邮件,其中包括一个verified
字段和一个primary
字段。EmailAddress
保存为主要电子邮件的 Allauth对象将在保存对象时将电子邮件地址自动复制到用户模型email
上的字段(在您的情况下)。因此,您可以执行以下操作:auth_user
EmailAddress
from allauth.account.models import EmailAddress
email, created = EmailAddress.objects.get_or_create(user=request.user, email=
email_address_from_linked_in, verified=True, primary=True)
if not created: email.primary = True email.save()
再次,关键是要设置primary
上EmailAddress
是True
为了有自动复制到的电子邮件地址email
中的字段用户模型。
添加回答
举报