我正在使用 django-social-auth 进行 Facebook 登录。我可以使用“/facebook/login”登录用户。但是,我需要检查用户是否在其他页面上使用 facebook 登录。模块中是否有方法可以检查用户是否使用 facebook 登录?
谢谢
我正在使用 django-social-auth 进行 Facebook 登录。我可以使用“/facebook/login”登录用户。但是,我需要检查用户是否在其他页面上使用 facebook 登录。模块中是否有方法可以检查用户是否使用 facebook 登录?
谢谢
您可以检查用户是否有任何 Facebook 帐户,例如:
for usersocialauth in request.user.usersocialauth_set.all():
print usersocialauth.provider
您不妨获取用户的提供者列表:
request.user.usersocialauth_set.values_list('provider')
当心:commit 7f967702 中引入了宇宙向后兼容性中断。详细阅读答案评论。
更新了最新的 Django / python-social-auth
此示例检查 facebook 是否链接到该帐户。将 facebook 替换为有效的后端名称。
'facebook' in user.social_auth.all().values_list("provider", flat=True)