我创建了一个名为 Metric 的 Django (v. 2.1.5) 模型,它本身就是一个嵌入模型,如下所示:
from djongo import models
class Metric(models.Model):
_id = models.ObjectIdField()
...
dependencies = models.ArrayModelField(
model_container='Metric',
blank=True,
)
def __str__(self):
return self.name
class Meta:
db_table = 'metric'
但是,当我尝试执行代码时:
for metric in Metric.objects.all():
我收到以下错误:
File "/.../python3.6/site-packages/djongo/models/fields.py", line 235, in to_python
if isinstance(mdl_dict, self.model_container):
TypeError: isinstance() arg 2 must be a type or tuple of types
我想这个错误是由于在 model_container 赋值上使用单引号引起的,但我不能删除它,因为 model_container 是类本身。另外,我不确定这是否是原因。
无论如何,我能做些什么来解决这个错误?