检查当前用户是否使用任何django社交身份验证提供程序登录

vin*_*nCi 5 django django-socialauth python-social-auth

我想检查用户是通过社交身份验证还是使用django默认身份验证登录.

就像是

如果user.social_auth = true?

lol*_*llo 1

from social_auth.models import UserSocialAuth

try:
    UserSocialAuth.objects.get(user_id=user.id)
except UserSocialAuth.DoesNotExist:
    print "user is logged in using the django default authentication"
else:
    print "user is logged in via social authentication"
Run Code Online (Sandbox Code Playgroud)

您可以向用户模型添加方法。