【发布时间】:2016-10-02 08:39:32
【问题描述】:
我已停止使用不再需要的第 3 方应用程序,因此我已从我的 virtualenv 中卸载。但是,这会导致我迁移时引用该应用程序模型的所有旧迁移失败。
from menu.models import MenuItem
ImportError: No module named menu.models
我能想到的唯一两个选择是保留安装的第 3 方应用以满足迁移需求,或者编辑旧迁移以删除对现已失效应用的引用。
似乎都不理想。还有什么我没有想到的方法吗?
【问题讨论】:
-
您可以尝试
squashmigrations,但这并不总是有效。编辑旧迁移通常是我必须这样做的方式..(或者我只是留下参考) -
是的,我注意到了 squashmigrations 路线。但这在这种情况下是行不通的,我不认为,因为使用旧模型的迁移实际上是在创建该模型的实例,所以它们不会被“压扁”。我想我只需要编辑旧的迁移。
-
是的,但是对于它的价值,我会看看应用程序实际占用了多少空间,如果不是那么多,它可能不值得投入时间跨度>
-
好点。我想将旧应用程序保留在那里并没有那么糟糕。当涉及到需求文件时,我只是一个干净的怪物,而这个是一个怪物!