Класс Facebook в промежуточном программном обеспечении социальной регистрации выглядит следующим образом:
class Facebook(object):
def __init__(self, user=None):
if user is None:
self.uid = None
else:
self.uid = user['uid']
self.user = user
self.graph = facebook.GraphAPI(user['access_token'])
Если пользователь не настроен на __inii__
, он просто не установит graph
.В промежуточном программном обеспечении это должно быть установлено через:
fb_user = facebook.get_user_from_cookie(request.COOKIES, getattr(settings, 'FACEBOOK_APP_ID', settings.FACEBOOK_API_KEY), settings.FACEBOOK_SECRET_KEY)
request.facebook = Facebook(fb_user)
Так что я предполагаю, что cookie от Facebook не установлен для вашего сайта.Может быть, вы добавили некоторые записи в журнал отладки, чтобы определить, есть ли cookie от Facebook или нет.
Другое предположение: request.facebook
где-то перезаписывается.Может быть, вы тоже это проверите.