我们使用south来管理迁移很长一段时间,现在我们有大约100多次迁移.
它导致很长时间python manage.py migrate在新的数据库上运行.
我想知道我是否可以将所有现有迁移合并到单个迁移中
这已在Django中解决了1.7 +有一个新的管理命令./manage.py squashmigrations appname,请查看此链接 - https://docs.djangoproject.com/en/1.7/topics/migrations/#squashing-migrations
小智 5
您可以使用squashmigrations管理命令到达那里。它将保留旧的迁移文件,但在安装新内容时使用压缩版本。
例子:
./manage.py squashmigrations core 0003_auto
Run Code Online (Sandbox Code Playgroud)
查看官方文档
如果您希望消除开发过程中产生的所有试验和错误浪费,请从应用程序migrations目录中删除迁移以及 SQL 表django_migrations和应用程序实际数据库表中所有提及您的应用程序的内容。
然后跑./manage.py makemigrations,你就可以走了。对于已经投入生产使用的应用程序,不建议这样做。