我正在使用Django 1.8.4。由于我的项目仍在构建中,我经常删除所有迁移脚本,并重新运行makemigrations
以生成初始迁移脚本。
我发现makemigrations
会为我的某个应用生成两个迁移脚本,而其他应用只有0001_initial.py
。它会是这样的:
- 0001_initial.py
- 0002_auto_20150919_1645.py
我检查了0002_auto_20150919_1645.py
的内容,它正在从其他应用的模型中添加外来字段
我想这可能与为应用程序创建迁移的顺序有关。所以我删除了这个应用程序的这两个迁移脚本,然后再次运行makemigrations
。现在我只有一个这个应用程序的迁移脚本。
我的问题是:
有什么方法可以控制订单makemigrations
为应用创建迁移吗?
例如,我有两个应用,app1
和app2
,app1
取决于app2
。可以makemigrations
首先为app2
创建迁移,然后app1
吗?
答案 0 :(得分:1)
您可以手动为单个应用运行迁移。
./manage.py makemigrations app2
./manage.py makemigrations app1
./manage.py makemigrations # migrate the rest of your apps
您还可以squash现有的迁移。