我找到了相反情况的答案: django-allauth:链接多个社交账户到单一用户 也就是,本地用户可以连接一个社交账户。在通过社交登录创建账户后是否有简单的方法来获取本地账户?我想我的一些用户会感到困惑,并尝试注册本地账户,而且很多时候他们会想用相同的电子邮件地址进行注册,但我目前正在强制执行唯一性。
在社交连接时,Allauth会从您允许的社交网站收集用户名、电子邮件等数据,并在本地存储它们,但不包括密码。您可以前往/accounts/password/set/设置密码,然后使用您设置的电子邮件和密码登录。通过在settings.py中添加以下代码:ACCOUNT_AUTHENTICATION_METHOD = “username_email”您可以使用电子邮件或用户名进行登录,而用户名与您社交账户中的用户名相同。如果该电子邮件已被使用,则会显示“此电子邮件地址已注册用户”的错误。