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

时间:2017-09-07 21:33:10

标签: python django django-cms

我正在尝试将现有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时遇到警告unapplied migrations尽管迁移列表显示所有已应用,但再次运行迁移不执行任何操作(makemigrations也不执行任何操作)。 cms_urlconfrevision表存在于数据库中,带有id和revision字段,因此我无法进一步查看。

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

1 个答案:

答案 0 :(得分:1)

选择新数据库后,请先注释掉INSTALLED_APPS中放入的所有其他应用。然后移民和迁移。如果可以,则添加other appscreate migrations and migrate

  

如果仍然不起作用。

尝试从每个应用中的迁移目录中删除所有早期创建的迁移。然后再次makemigrations and migrate