在将某些模型(appname/models.py
中的所有内容)重构为子文件夹应用程序(appname/subapp/models.py
中的某些模型)和运行makemigrations后,我在运行管理管理时会遇到以下错误.py迁移:
ValueError: Found wrong number (2) of constraints for appname_modelname1(modelname2_id)
摆脱所有迁移并重新开始是一种选择,但是我必须手动编辑所有现有的生产数据库。是否有任何替代方法可以使迁移顺利进行?
事实证明, ./manage.py makemigrations
的迁移过度复杂,这可能会在实际约束式数据库上失败。如果目标只是为了摆脱模型,请首先进行迁移,然后编辑迁移文件,以便仅保留RemoveModel
指令,最后应用迁移。