如何在django中压缩被压缩的迁移?

Nir*_*ran 0 django django-models

例如,我有50个迁移,并且已将所有迁移压缩到0001_initial.py,然后又达到50个迁移。我如何压缩迁移?

knb*_*nbk 6

在压榨新迁移之前,您需要按照文档概述(在本节末尾)将压榨的迁移转换为正常迁移:

然后,您必须通过以下方式将压缩的迁移过渡到正常迁移:

  • 删除它替换的所有迁移文件。
  • 更新所有依赖于已删除迁移的迁移,以依赖压缩的迁移。
  • 在压缩迁移的Migration类中删除replaces属性(这就是Django告诉它是压缩迁移的方式)。

一旦删除了被压缩的原始迁移以及所有引用,被压缩的迁移将成为“正常”迁移,您将能够再次压缩它们。