我正在编写依赖于另一个应用程序中模型的django向南迁移,因此我在运行--freeze OTHERAPPNAME时包括了python manage.py datamigration …
但是在forwards()函数中,我可以很好地访问其他模型(使用orm['otherappname.MyModelName']),但是在backwards()步骤(这也取决于otherappname中的模型)中,如果尝试访问orm['otherappname.MyModelName'],则会收到错误消息

*** KeyError: "The model 'mymodelname' from the app 'otherappname' is not available in this migration."

我可以在文件底部看到卡住的模型详细信息。我为什么不能访问它?

注意:此模型是在此数据迁移所依赖的其他应用程序名称内的另一个迁移中创建的。

最佳答案

向后迁移实际上使用的是先前迁移的卡住ORM。考虑到它是合乎逻辑的,但是公认它不是很直观。

道德:在进行数据迁移的模式迁移中卡住数据迁移所需的模型。

关于python - Django-South DataMigration-应用程序在forwards()中可用,而在backwards()中不可用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9536901/

10-10 04:09