Django 使用数组字段在 makemigrations 上引发应用程序未加载错误
Posted
技术标签:
【中文标题】Django 使用数组字段在 makemigrations 上引发应用程序未加载错误【英文标题】:Djongo Using ArrayField throws Apps No Loaded Error on makemigrations 【发布时间】:2020-07-29 10:02:58 【问题描述】:我正在尝试使用使用 ArrayField 的 djongo 创建一个 django 模型
class SubModel(models.Model):
i = models.IntegerField()
class Meta:
abstract = True
class BiggerModel(models.Model):
subarr = models.ArrayField(model_container=SubModel)
当我运行 makemigrations 时,我得到了错误
AppRegistryNotReady("模型尚未加载。")
仅当我使用 ArrayField 时才会发生这种情况。不与任何其他字段
我正在使用django 2.1.5
和djongo 1.3.2
【问题讨论】:
【参考方案1】:这是 Djongo 1.3.2 上的一个错误。您可以将其降级到 1.3.1 或等待新版本(直到今天,4 月 23 日,有一个 PR 合并,但不是新版本)
【讨论】:
您使用的是什么版本的 Django 和 pymongo(以及 Djongo 1.3.1)?以上是关于Django 使用数组字段在 makemigrations 上引发应用程序未加载错误的主要内容,如果未能解决你的问题,请参考以下文章
Djongo 没有使用 Django-rest-framework 正确获取对象数组嵌入字段
如何使用 SQL 的“IN”等字段上的数组过滤 django 查询集?