一尘不染

如何使用django-allauth获取用户的Facebook ID?

django

我想在模板中显示current_user的图片。使用django-allauth时如何访问用户的Facebook ID?


阅读 431

收藏
2020-04-02

共1个答案

一尘不染

对于通过社交帐户注册的每个用户,都可以使用一个SocialAccount实例。此模型具有的外键User。请注意,用户可以将多个社交网络帐户连接到其本地帐户,因此实际上可能有多个SocialAccount实例可用。

你如何处理此问题取决于项目。我可以想象有人想要在本地复制个人资料图片,或者你可能希望优先选择Facebook上方的Google+个人资料图片,依此类推。

SocialAccount模型具有一些帮助程序方法,可让你访问帐户基础知识,例如个人资料图片。总而言之,这是访问第一张可用个人资料照片的快捷方式:

{{user.socialaccount_set.all.0.get_avatar_url}}

该ID也可用:

{{user.socialaccount_set.all.0.uid}}
2020-04-02