1

我正在使用 django-social-auth 进行 Facebook 登录。我可以使用“/facebook/login”登录用户。但是,我需要检查用户是否在其他页面上使用 facebook 登录。模块中是否有方法可以检查用户是否使用 facebook 登录?

谢谢

4

2 回答 2

3

您可以检查用户是否有任何 Facebook 帐户,例如:

for usersocialauth in request.user.usersocialauth_set.all():
    print usersocialauth.provider

您不妨获取用户的提供者列表:

request.user.usersocialauth_set.values_list('provider')

当心:commit 7f967702 中引入了宇宙向后兼容性中断。详细阅读答案评论。

于 2012-02-24T09:38:26.260 回答
1

更新了最新的 Django / python-social-auth

此示例检查 facebook 是否链接到该帐户。将 facebook 替换为有效的后端名称。

'facebook' in user.social_auth.all().values_list("provider", flat=True)
于 2015-07-22T03:39:31.450 回答