Я работаю над проектом, используя django, подключаясь к базе данных MongoDB, используя djongo.У меня есть несколько моделей и несколько абстрактных моделей, которые я встраиваю как ArrayModelFields.Однако, когда я пытаюсь использовать ArrayModelField внутри модели, на которую, в свою очередь, ссылаются как на ArrayModelField, я получаю объект «nontype» не повторяемый (не знаю почему).
Я заставил систему работать, объединив в этом случае две модели (Grade & Detail) в одну (после того, как модель Grade не существовала), но возможно ли вообще это сделать?что я хотел сделать вначале?
До того, как я попробовал различные варианты встраивания для списков и массивов, как указано в документации по 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 в has_changed, строка 329
Исполняемый файл Python: D: \ COMP405 \ COMP405 \ env \ Scripts \ python.exe
Python Версия: 3.7.2