“django-rest-auth”DoesNotExist:站点匹配查询不存在

时间:2016-11-27 20:14:57

标签: django django-rest-framework django-rest-auth

我正在使用django-rest-auth将facebook与android集成为前端。我按照集成django-rest-auth中提到的所有步骤进行了操作。

我只有一个SITE并将SITE_ID设置为1

我还设置了我的应用的客户ID和密码ID,并确保我选择了我的网站。

这是截图

enter image description here

以下是我的代码

 INSTALLED_APPS = [
    'rest_auth',
    'django.contrib.sites',
    'allauth',
    'allauth.account',
    'allauth.socialaccount',
    'allauth.socialaccount.providers.facebook',
]

我的自定义登录序列化程序

REST_AUTH_SERIALIZERS = {
    'LOGIN_SERIALIZER': 'cut_veggie_user.serializers.NormalUserSerializer',
}

AUTHENTICATION_BACKENDS = (
    'django.contrib.auth.backends.ModelBackend',
    'allauth.account.auth_backends.AuthenticationBackend',
)

SITE_ID = 1

在网址中我还包括了FacebookLogin

urlpatterns = [
              url(r'^rest-auth/facebook/$', FacebookLogin.as_view(),       name='fb_login'),
          ] 

谁能告诉我我缺少什么?

1 个答案:

答案 0 :(得分:1)

最终弄清楚问题。

我按照以下步骤

  

python manage.py shell

然后我通过此命令获得了我网站的网站ID

from django.contrib.sites.models import Site
new_site = Site.objects.create(domain='foo.com', name='foo.com')
print new_site.id

并在settings.py

中将ID添加到SITE_ID

令我惊讶的是我的网站ID为3,我不知道为什么。

感谢this帖子