我使用的是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。是否可以先为app2创建迁移,然后再创建app1
发布于 2015-09-19 21:03:01
您可以手动为单个应用程序运行迁移。
./manage.py makemigrations app2
./manage.py makemigrations app1
./manage.py makemigrations # migrate the rest of your apps您还可以squash您现有的迁移。
https://stackoverflow.com/questions/32666351
复制相似问题