0

我正在使用 django 连接到使用 djongo 的 MongoDB 数据库的项目。我有一些模型和一些抽象模型,我嵌入为 ArrayModelFields。但是,当我尝试在模型中使用 ArrayModelField 时,该模型又被称为 ArrayModelField,我得到一个“nonetype”对象不可迭代(不知道为什么)。

在这种情况下,我已经通过将两个模型(等级和细节)合并为一个来使系统工作(在意识到等级模型不需要存在之后),但是有可能做我最初想做的事情?

在我尝试了 djongo 文档中列出的列表和数组的各种嵌入选项之前,但没有其他工作。

class Grade(models.Model):
    kihon_Grade = models.CharField(max_length = 2, null = True)
    kata_Grade = models.CharField(max_length = 2, null = True)
    kumite_Grade = models.CharField(max_length = 2, null = True)
    class Meta:
        abstract = True

class Detail(models.Model):
    member = models.ForeignKey(to = Member, on_delete = None)
    rank = models.CharField(max_length = 10, null = True)
    grade = models.ArrayModelField(model_container = Grade, null = True)
    result = models.CharField(max_length = 10, null = True)
    class Meta:
        abstract = True

class Grading(models.Model):
    _id = models.ObjectIdField()
    examiner = models.CharField(max_length = 25, null = True)
    date = models.DateField(null = True, blank = True)
    detail = models.ArrayModelField(model_container=Detail, null=True, blank=True)
    def __str__(self):
        return self.date

我收到以下异常。

Django 版本:2.0

异常类型:TypeError

异常值:“NoneType”对象不可迭代

异常位置:D:\COMP405\COMP405\env\lib\site-packages\djongo\models\fields.py in has_changed,第 329 行

Python 可执行文件:D:\COMP405\COMP405\env\Scripts\python.exe

Python版本:3.7.2

4

0 回答 0