将 django-cms 项目从 sqlite 切换到 postgres

Switching django-cms project from sqlite to postgres

我正在尝试将现有 django-cms project 的数据库后端从 sqlite3 切换到 postgresql。当我从一个新的 sqlite 数据库开始并应用所有 migrations 时,一切正常。如果我对新的 postgres 数据库执行相同的操作,一切似乎都正常,但在尝试执行任何操作时出现以下错误:

django.db.utils.ProgrammingError: relation "cms_urlconfrevision" does not exist 
LINE 1: ...sion"."id", "cms_urlconfrevision"."revision" FROM "cms_urlco...

我在 运行 runserver 时收到警告,尽管迁移列表显示所有已应用,但 运行 runserver 有 unapplied migrations,并且 运行 migrate again 什么都不做(makemigrations 也做没有什么)。 cms_urlconfrevision table 存在于数据库中,带有 id 和 revision 字段,所以我不知道在哪里可以进一步查看。

添加版本:django 1.9.7、django-cms 3.4.4

选择新数据库后,首先注释掉您在INSTALLED_APPS中放入的所有其他应用程序。然后进行迁移和迁移。如果可行,则添加 other appscreate migrations and migrate.

If still it doesn't work.

尝试从每个应用程序的迁移目录中删除所有先前创建的迁移。然后又是 makemigrations and migrate.