迁移时不存在“django_site”

今天早些时候,由于各种原因,我遇到了一些冲突迁移的问题。我决定只销毁整个数据库并从头开始(我们在项目中还很早,重置所有内容没有害处)。但是,当我试图让事情恢复并运行时,manage.py migrate我得到了这个错误:


File "/Users/travis/Documents/venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 84, in _execute

    return self.cursor.execute(sql, params)

psycopg2.errors.UndefinedTable: relation "django_site" does not exist

LINE 1: ..."django_site"."domain", "django_site"."name" FROM "django_si...

                                                             ^



The above exception was the direct cause of the following exception:


Traceback (most recent call last):


  ...


    return self.cursor.execute(sql, params)

django.db.utils.ProgrammingError: relation "django_site" does not exist

LINE 1: ..."django_site"."domain", "django_site"."name" FROM "django_si...

                                                             ^


这似乎是一个非常常见的错误,我见过(并尝试过)的主要解决方案是:

  1. 添加SITE_ID = 1到base.py;就我而言,它已经在那里了。

  2. 包括 "django.contrib.sites"早些时候DJANGO_APPS我已经尝试把它放在第一位并且得到了同样的错误。

  3. manage.py migrate sites在其他迁移之前运行;运行此迁移给我同样的错误。

此外,我已经完全删除了数据库,并创建了一个新的 PGSQL 实例,我已经在本地删除了项目并从我们的存储库中克隆了它。我尝试在不同的位置创建新的 venv。我已经重新安装了 Django。


浮云间
浏览 96回答 1
1回答

慕斯709654

经过 5 个多小时的闲逛,终于有了灵感。在其中一个应用程序中有一个utils.py带有变量的文件domain = Site.objects.get_current().domain。由于还没有Site表,所以它无法获取Site对象......不太确定为什么从头开始初始化数据库会出现问题,因为它不会有问题,Users但也许有一些独特的东西Sites。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python