我在django-allauth面臨一個問題。Django:SocialApp匹配查詢不存在
我有以下細節
socialapp配置localhost:9000/admin/
。
提供商: 名稱: 客戶端ID: 應用程序ID,或消費者鍵 重點: 祕密:等。
我設置SITE_ID = 2(因爲我改變了默認站點example.com爲localhost:9000)
In setting.py
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.admin',
'uni_form',
'allauth',
'allauth.account',
'allauth.socialaccount',
'bootstrapform',
# 'allauth.socialaccount.providers.twitter',
# 'allauth.socialaccount.providers.openid',
'allauth.socialaccount.providers.facebook',
)
SOCIALACCOUNT_PROVIDERS = \
{ 'facebook':
{ 'SCOPE': ['email', 'publish_stream'],
'AUTH_PARAMS': { 'auth_type': 'reauthenticate' },
'METHOD': 'oauth2' ,
'LOCALE_FUNC': 'path.to.callable'} }
現在,當我準備在URL http://localhost:9000/accounts/facebook/login
我得到錯誤:SocialApp matching query does not exist.
請幫我看看我在這裏做錯了什麼。
感謝作者我缺少django.contrib.sites.models.Site行 – masterofdestiny 2013-03-15 09:58:02
我無法讓管理面板顯示我的SITE的ID,所以我將它加載到一個shell中:'from django.contrib.sites.models導入Site'並做了一個'Site.objects.all()'來查看列表。 'Site.objects.get(id = 2)'實際上被設置爲示例,所以我必須將我的設置更改爲3,這是我的本地主機設置爲。 – 2015-11-25 16:00:16
我在測試中遇到這個錯誤。這給了我一個線索。在您的設置中,您必須添加來自allauth.utils從allauth.socialaccount.models導入get_current_site導入SocialApp sa = SocialApp.objects.create(name ='Facebook',provider ='facebook')sa.sites.add(get_current_site( )) – 2016-04-16 13:35:25