【发布时间】:2018-08-30 16:02:31
【问题描述】:
我有 2 个模型 ai_output 定义了 AIOutput 和 manual_overwrite 和 ManualOverwrite,它们都在相互导入,所以我收到以下错误:
从 main.models.manual_overwrite 导入 ManualOverwrite
ImportError: 无法导入名称 ManualOverwrite
我可以通过 django 文档找到的唯一解决方案是通过删除其中一个文件中的类的导入来解决它,并将其替换为包含类名称的字符串
所以这个:
aioutput = models.ForeignKey(AIOutput, null=True, blank=True)
变成了这样:
aioutput = models.ForeignKey('ai_output.AIOutput', null=True, blank=True)
但现在我明白了:
main.ManualOverwrite.aioutput: (fields.E300) 字段定义关系 使用模型“ai_output.AIOutput”,该模型要么未安装,要么已安装 摘要。
知道如何解决循环导入的问题吗?任何提示将不胜感激!
【问题讨论】:
标签: django django-models