Django:处理导入数据库的迁移?

Django: handle migrations for an imported database?

我正在使用 Django 1.8 并尝试建立一个现有项目。我继承了一个数据库转储和一个代码库。

我已成功导入数据库转储。

问题是,如果我尝试 运行 migrate 针对导入的数据库,我会收到有关已存在的列的错误,因为数据库已经处于所有迁移的结束状态:

 django.db.utils.ProgrammingError: column "managing_group_id" 
   of relation "frontend_pct" already exists

我该如何解决这个问题?

我希望能够从这一点开始添加新的迁移,我也不希望删除所有现有的迁移。

基本上我需要一种表达方式"skip straight to migration 36, and continue from there"。

使用--fake选项告诉Django数据库中的每个应用程序都已经迁移到特定迁移。比如已经迁移到migration 36的app:

./manage.py migrate --fake myapp 0036_your_migration_name

您必须为每个已安装的应用执行此操作。

我认为上一个答案解决了您的迁移问题。因此我在下面添加了一个 link...

如果您刚开始使用 django 1.7 及更高版本,那么

这里我想补充一句linkDjango Migration How works

我认为这会很有用。