【问题标题】:"django-rest-auth" DoesNotExist: Site matching query does not exist“django-rest-auth”DoesNotExist:站点匹配查询不存在
【发布时间】:2016-11-27 20:14:57
【问题描述】:

我正在使用django-rest-auth 与 android 作为前端的 facebook 集成。我遵循了集成django-rest-auth中提到的所有步骤。

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

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

这是截图

下面是我的代码

 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'),
          ] 

谁能告诉我我错过了什么?

【问题讨论】:

  • 请描述您遇到的错误或问题
  • 这是我得到的错误,DoesNotExist:站点匹配查询不存在

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


【解决方案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

并将 id 添加到 settings.py 中的 SITE_ID

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

感谢this 发帖

【讨论】:

    猜你喜欢
    • 2016-11-17
    • 2015-12-29
    • 2014-09-22
    • 1970-01-01
    • 2013-04-10
    • 2022-01-10
    • 2013-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多