Django models 添加模型依赖项后删除应用程序引用
我有一个django应用程序,它利用了一个外部应用程序引用。我们不再需要此应用程序引用,因此希望删除依赖项。我能够生成迁移以删除我们正在删除的应用程序中模型的外键,但我无法删除应用程序中的需求引用,因为它在早期迁移中被引用 有没有人有已知的解决方案来删除这样的应用程序需求 举个例子,假设我有一个具有以下模型的外部应用程序:Django models 添加模型依赖项后删除应用程序引用,django-models,django-migrations,Django Models,Django Migrations,我有一个django应用程序,它利用了一个外部应用程序引用。我们不再需要此应用程序引用,因此希望删除依赖项。我能够生成迁移以删除我们正在删除的应用程序中模型的外键,但我无法删除应用程序中的需求引用,因为它在早期迁移中被引用 有没有人有已知的解决方案来删除这样的应用程序需求 举个例子,假设我有一个具有以下模型的外部应用程序: class ExternalInfo(models.Model): random_field = CharField() 在项目应用程序中,您有一个客户记录: cl
class ExternalInfo(models.Model):
random_field = CharField()
在项目应用程序中,您有一个客户记录:
class Customer(models.Model):
name = CharField()
external_info = ForegnKey(external_app.ExternalInfo, null=True)
应用程序的迁移0001在外部应用程序中创建模型的外键。10个月过去了,10次迁移之后,您需要从客户模型中删除外部应用程序信息,并希望从项目中删除外部应用程序。如何在不中断较旧迁移的情况下删除此依赖关系?好的,因此我解决此问题的方法是按顺序执行以下步骤:
按照这些步骤升级现有数据库和从头开始构建都会产生相同的数据库模式。(除了我现在需要找到摆脱应用程序创建的表的方法外,还有人对最佳方法有想法吗?我正在考虑编写一个migrations.RunSql来删除这些表,但它们不会存在于新创建的数据库中)你能解释一下步骤3吗?基本上,我将迁移历史重写为模块中不包含的表,这使我能够成功地删除依赖项