【发布时间】:2022-06-20 20:26:36
【问题描述】:
在我的网站 (www.raptors.ru) 上,我正在使用 social-auth-app-django 来授权来自 Facebook 的用户。为了让他们更容易登录,我做了以下设置:
ACCOUNT_PASSWORD_INPUT_RENDER_VALUE = True
这样用户就不需要输入密码了。 FB 用户第一次登录时,会在表users 中创建一条记录。重要的是,该用户在我的网站上没有密码。但是,该用户功能齐全:他能够发布帖子、制作 cmets 等。如果用户想要断开与他的社交帐户的连接,问题就开始了。
首先,如果有人试图通过 LoginCancelledView 断开他的帐户(直接链接是https://raptors.ru/accounts/social/login/cancelled/,他会收到一条消息说他已成功断开连接,但这不是事实,因为他的用户名仍在页面标题上(见屏幕截图)。
断开连接的第二种方法是从连接页面 (https://raptors.ru/accounts/social/connections/)。
但是,如果用户点击 Remove 按钮,Django 不会这样做并报告以下错误:您的帐户没有设置密码。
请告诉我,从我的网站断开(或完全删除)Facebook 用户的正确且有效的方法是什么? FB 坚持我应该提供这个选项。
【问题讨论】:
标签: django facebook disconnect social-auth-app-django