Django项目中的多个初始迁移文件

wbrvyc0a  于 2023-10-21  发布在  Go
关注(0)|答案(1)|浏览(147)

在我的项目中,为了重新创建迁移,我删除了所有的迁移文件,只保留了“initial.py“不变。之后,我删除了PostgreSQL数据库并执行了“makemigrations”命令。在某些应用程序中,它会生成多个迁移文件,例如“0001_initial.py”和“0002_initial.py”。这种行为是否正常?

9w11ddsr

9w11ddsr1#

是的,这很正常。有时候django会根据一些逻辑将迁移拆分为两个文件。你可以在官方文档中阅读它。
从医生那里

The “initial migrations” for an app are the migrations that create the first version of that app’s tables. Usually an app will have one initial migration, but in some cases of complex model interdependencies it may have two or more.

确保在重新创建迁移时,使用以下命令删除所有迁移文件,然后运行makemigrations

find . -path "*/migrations/*.py" -not -name "__init__.py" -delete
find . -path "*/migrations/*.pyc"  -delete

有关重置迁移的详细信息,请参阅此article

相关问题