Django makemigrations 应用程序顺序

Han*_* He 7 django django-migrations

我正在使用 Django 1.8.4。由于我的项目仍在建设中,我经常删除所有迁移脚本,然后重新运行makemigrations以生成初始迁移脚本。
我发现makemigrations会为我的一个应用程序生成两个迁移脚本,而其他应用程序只有0001_initial.py. 它会是这样的:

- 0001_initial.py
- 0002_auto_20150919_1645.py
Run Code Online (Sandbox Code Playgroud)

我检查了 的内容0002_auto_20150919_1645.py,它正在从另一个应用程序的模型中添加外部字段。
我想这可能与为应用程序创建迁移的顺序有关。所以我把这个app的这两个迁移脚本删除了,然后makemigrations重新运行。现在我只有这个应用程序的一个迁移脚本。

我的问题是:有什么方法可以控制makemigrations为应用程序创建迁移的顺序?

例如,我有两个应用程序app1app2,并且app1依赖于app2. 是否可以先makemigrations创建迁移app2,然后再创建迁移app1

Ala*_*air 12

您可以为单个应用程序手动运行迁移。

./manage.py makemigrations app2
./manage.py makemigrations app1
./manage.py makemigrations # migrate the rest of your apps
Run Code Online (Sandbox Code Playgroud)

您还可以压缩现有的迁移。