Python Social Auth Pipeline无法正常工作

时间:2014-03-12 12:54:35

标签: python django facebook

这是我使用python social auth获取用户详细信息的代码。一旦用户通过Facebook验证,并且Facebook重定向回我的自定义URL,我的应用程序就无法登录用户。

如果我删除下面的代码,那么一切顺利(即用户可以登录),但我无法从Facebook获取额外的细节。我需要从Facebook获取出生日期和地址以及其他默认详细信息。

任何有关从Google获取详细信息的帮助都将不胜感激。我找不到任何文档来从Google获取详细信息。

def get_profile_data(backend, details, response, social_user, uid, user, *args, **kwargs):
profile= Profile.objects.get_or_create(user=user)
if backend.__class__.__name__ == 'FacebookOAuth2':

    if not user.email and response.get('email'):
        user.email = response.get('email')

    if not profile.gender and response.get('gender'):
        profile.gender = response.get('gender')

    if not profile.date_of_birth and response.get('birthday'):
        datestring = response.get('birthday')
        date_format = "%m/%d/%Y"
        profile.date_of_birth = datetime.strptime(datestring, date_format)

    profile.user = user
    profile.save()
    user.save()

1 个答案:

答案 0 :(得分:0)

试试这个:

if backend.__class__.__name__ == 'FacebookBackend':