1
我試圖從django-social-auth獲取來自Facebook的用戶個人資料圖片。用Django社交認證從Facebook獲取用戶uid
我在另一篇文章中看到,我應該從Facebook獲得用戶uid才能訪問個人資料圖片。 我如何獲得uid?
從django-social-auth我剛剛安裝了它,並配置了基本的東西登錄/登出與Django的註冊。
這是我的HTML登錄: 登錄與FB
如何我可以做一個「家」的視圖的請求用戶在Facebook和獲得UID?
我發現這個在Django的socail-auth的文檔:
def social_associate_and_load_data(backend, details, response, uid, user,
social_user=None, *args, **kwargs):
"""
The combination of associate_user and load_extra_data functions
of django-social-auth. The reason for combining these two pipeline
functions is decreasing the number of database visits.
"""
extra_data = backend.extra_data(user, uid, response, details)
created = False
if not social_user and user:
social_user, created = UserSocialAuth.objects.get_or_create(
user_id=user.id,
provider=backend.name,
uid=uid,
defaults={'extra_data': extra_data})
if not created and extra_data and social_user.extra_data != extra_data:
social_user.extra_data.update(extra_data)
social_user.save()
return {'social_user': social_user}
我應該在哪裏把它放在我的Django應用程序?在views.py中?如果是的話,我如何才能激活視圖,如果我只是通過社交認證網站登錄。
Facebook的'uid'存儲在'UserSocialAuth'例如,你可以通過做'user.social_auth.get得到它(商= 'Facebook的')。uid'。 – omab
謝謝!從未注意到它 –
順便說一句,django-social-auth庫已被棄用。請查看他們的文檔以獲取更多細節。 –