一个不在乎邓普蒂如何被安置在一起的迁徙者。
django-squash的Python项目详细描述
Django Squash是一个迁移挤压替代品,它更关心保持迁移的小而精确。
设置
- pip install django-squash
- 将django_squash添加到INSTALLED_APPS中。
- 利润!
这是什么
假设你有一个应用程序已经有几年了,对应用程序的migrations文件夹做了很多更改,如下所示:
app/migrations/__init__.py app/migrations/0001_initial.py app/migrations/0002_changes.py ... app/migrations/0400_changes.py
您可以运行python manage.py squash_migrations,然后它将如下所示:
app/migrations/__init__.py app/migrations/0001_initial.py app/migrations/0002_changes.py ... app/migrations/0400_changes.py app/migrations/0401_squashed.py
在0401_squashed.py中,您将发现所有迁移,包括所有可省略的RunPython和RunSQL。
在您知道从0001到0401的所有迁移都已应用之后,请运行python manage.py delete_squashed_migrations。
运行测试
pip install -e '.[test]' coverage run setup.py test coverage report -m