Django的; squashmigrations和循环依赖

时间:2016-12-24 13:01:34

标签: python django django-migrations

我有一个包含多个应用程序的Django项目,其中许多都包含大量的迁移文件。我试图使用squashmigrations命令一次压缩这一个应用程序,但这样做会导致CircularDepencdyError。 Django文档here建议打破循环依赖关系中的一个键以解决错误,但错误没有指定此级别的详细信息。随着数千行迁移代码的筛选,我感到困惑。

是否有人有解决此类问题的经验或了解一些最佳做法或提示,以寻找什么?

1 个答案:

答案 0 :(得分:2)

正如塞巴斯蒂安所推荐的那样,修复了这个循环依赖的混乱:

  • 从项目目录中删除迁移文件
  • django_migrations数据库表
  • 中删除迁移条目
  • 运行makemigrations - Django创建新的迁移文件
  • 运行migrate --fake,因为您应该已经拥有数据库中的表格

在这样做之后,我能够让manage.py test像魅力一样工作。