Django 使用allauth报错 RuntimeError: Model class django.contrib.sites.models.Site doesn't declare an

Posted dayouzi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django 使用allauth报错 RuntimeError: Model class django.contrib.sites.models.Site doesn't declare an相关的知识,希望对你有一定的参考价值。

一:报错 RuntimeError: Model class django.contrib.sites.models.Site doesn‘t declare an explicit app_label and isn‘t in an application in INSTALLED_APPS

出现这种情况需将Django的Sites框架添加到您的应用程序中,并在您的设置中将SITE_ID设置为1即可。位置放在默认配置的后面,其他应用的前面。

INSTALLED_APPS = [
    django.contrib.admin,
    django.contrib.auth,
    django.contrib.contenttypes,
    django.contrib.sessions,
    django.contrib.messages,
    django.contrib.staticfiles,
    django.contrib.sites,#这边是allauth的依赖包,必须在app和登录模块前面

    xproject,

    #登录模块
    allauth,
    allauth.account,
    allauth.socialaccount,
    allauth.socialaccount.providers.github,

]

SITE_ID = 1

 

二:

报错(‘42S02‘, "[42S02] [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]对象名 ‘django_site‘ 无效。 (208)

这种情况需要同步一下数据库

执行 python manage.py makemigrations

  python manage.py migrate

以上是关于Django 使用allauth报错 RuntimeError: Model class django.contrib.sites.models.Site doesn't declare an的主要内容,如果未能解决你的问题,请参考以下文章

django-allauth 检索头像头像

使用 django-allauth 时如何自定义用户配置文件

使用 django-allauth 实现 Ajax 请求/响应

使用 django-allauth 启用 oauth 登录,但使用自定义提供程序

Django 使用 Allauth 进行身份验证

如何使用 django-allauth 访问用户名和配置文件