2017-10-10 42 views
0

我正在嘗試訪問使用Django-AllAuth的用戶的個人資料圖片和帖子。這裏就是我試圖加載簡介圖像模板:應用程序無法訪問使用DjangoAllAuth的個人資料圖片和帖子

<html> 


<body> 

Welcome back {{ user.first_name }} {{ user.age }} 
<img src={{user.cover.source}} height="60" width="60"> 

<a href="/">Home</a> 
</body> 


</html> 

這裏是view.py

def fb_personality_traits(request): 
    # logger.debug('FB Page Loaded') 
    return render(request, 'home/facebook_personality_traits.html') 

Settings.py

SITE_ID = 1 

LOGIN_REDIRECT_URL = '/facebook_personality_traits/' 
SOCIALACCOUNT_QUERY_EMAIL = True 
SOCIALACCOUNT_PROVIDERS = { 
    'facebook': { 
     'SCOPE': ['email', 'user_posts', 'public_profile', 'user_photos'], 
     # 'AUTH_PARAMS': {'auth_type': 'reauthenticate'}, 
     'METHOD': 'js_sdk', 
     'FIELDS': [ 
      'id', 
      'email', 
      'name', 
      'first_name', 
      'last_name', 
      'cover', 
      'posts', 
      'age', 
     ], 
     'EXCHANGE_TOKEN': True, 
     'VERIFIED_EMAIL': True, 
     'VERSION': 'v2.10', 
    } 
} 
ACCOUNT_LOGOUT_ON_GET = True 

在這裏,我沒有得到圖片。請參見下面的結果:

current image

我想實現什麼?

1)我想在屏幕上顯示配置文件圖像。

2)我想獲取登錄在view.py中的用戶的帖子,並將其發送到屏幕上以顯示在模板上。

+0

任何UI控制檯日誌? –

+0

日誌中沒有任何內容。 –

回答

0

不重要的字段,如agecover不是django-allauth所堅持的。 User模型中只有通用字段自動保留(see fields)。你需要自己處理,通過捕獲數據並將其存儲在某個地方,比如數據庫。這些字段只能在登錄後響應(see example method)中檢索和訪問,它們可以在extra_data字典中找到。

成功登錄後,我建議在SocialAccount實例(本例中爲Facebook)上調用get_avatar_url並將此值存儲在數據庫中。在Facebook的情況下,用戶頭像網址不應隨時間而改變。

相關問題