DjangSouth数据迁移应用程序在forwards()中可用,但不能在backwards()中使用?

2024-07-03 07:13:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个django-south迁移,它依赖于另一个应用程序中的模型,因此我在运行python manage.py datamigration …时包含了--freeze OTHERAPPNAME

但是在forwards()函数中,我可以很好地访问另一个模型(使用orm['otherappname.MyModelName']),但是在backwards()步骤中(这也取决于otherappname中的模型),如果我试图访问orm['otherappname.MyModelName'],我会得到一个错误

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

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

注意:这个模型是在otherappname中的另一个迁移中创建的,而这个迁移依赖于它。在


Tags: django函数py模型应用程序manageormfreeze
1条回答
网友
1楼 · 发布于 2024-07-03 07:13:43

向后迁移实际上使用先前迁移的冻结ORM。当你思考它的时候,这是合乎逻辑的,但它不承认是非常直观的。在

寓意:在进行数据迁移的schemamigration中冻结数据迁移所需的模型。在

相关问题 更多 >