最後に、django-allauth
を使用して、Facebookからさまざまな値にアクセスする方法があります。私が直面している唯一の問題は、テンプレート上の値にアクセスすることです。ここでdjangoテンプレートのjson値へのアクセス
はviews.py
次のとおりです。ここで
from allauth.socialaccount.models import SocialToken
import json
import requests
def fb_personality_traits(request):
access_token = SocialToken.objects.get(account__user=request.user, account__provider='facebook')
# print access_token.token
requested_data = requests.get(
'https://graph.facebook.com/me?access_token=' + access_token.token + '&fields=id,name,email,posts,about')
data_FB = json.loads(requested_data)
return render(request, 'home/facebook_personality_traits.html', {'fb': data_FB})
は、私は値を表示するために使用していたテンプレートtahtです:
<html>
<body>
Welcome back {{ user.name }}
{{fb.name}}
<!-- <img src="" height="60" width="60"> -->
<a href="/">Home</a>
</body>
</html>
私は、次のエラーを取得しています:
せて頂きます改善すべき点を知る。テキスト内の
は**エラー**
TypeError at /facebook_personality_traits/
expected string or buffer
Request Method: GET
Request URL: http://website:port/facebook_personality_traits/
Django Version: 1.11.5
Exception Type: TypeError
Exception Value:
expected string or buffer
Exception Location: /usr/lib/python2.7/json/decoder.py in decode, line 364
Python Executable: /usr/bin/python
Python Version: 2.7.12
Python Path:
['/home/ubuntu/PersonalityWithFacebook',
'/usr/lib/python2.7',
'/usr/lib/python2.7/plat-x86_64-linux-gnu',
'/usr/lib/python2.7/lib-tk',
'/usr/lib/python2.7/lib-old',
'/usr/lib/python2.7/lib-dynload',
'/usr/local/lib/python2.7/dist-packages',
'/usr/lib/python2.7/dist-packages']
Server time: Wed, 11 Oct 2017 11:00:14 +0000
これは私がJSON変数に格納していますJSONです:gist of the json
* i.stack.imgur.comは現在、このリクエストを処理できません。エラーが画像の一部ではなくテキストの一部として追加される理由が増えています。 –
@MosesKoledoyeちょっとした瞬間を追加しています... –