我正在删除项目中的一些死代码,并且我有机会从我们开始使用以来一直使用的第三方应用程序中删除依赖项该项目。我们的一个模型在第三方应用程序中有一个ForeignKey模型,并且在尝试对项目的新实例应用迁移时遇到了麻烦。将ForeignKey移除到第三方模型后迁移
一个示例模型:
from django.db import models
from thirdparty.models import ThirdPartyModel
class MyModel(models.Model):
fk = models.ForeignKey(ThirdPartyModel)
MyModel.fk
卸下由南检测,并成功地创建了迁移。应用迁移并回滚它也可以。我现在可以从INSTALLED_APPS
中删除thirdparty
并提交更改(新迁移和settings.py
)。
当我克隆另一台机器上的存储库时,麻烦就开始了。 ./manage.py syncdb
运行正常,并创建不是由南方管理的所有表,但创建表(早期版本)MyModel
时,因为外键thirdparty_thirdpartymodel
不能创建(如预期,因为thirdparty
不再INSTALLED_APPS
所以没有的./manage.py migrate myapp
失败表格被创建)。
是否有标准的方法来处理消除外部依赖?这是重置我的迁移的适当时机吗?