У меня есть Document и внедренный документ, и я хочу вставить значение в ListField моего встраиваемого документа. Я не смог найти что-либо об этой проблеме в stackoverflow, поэтому, возможно, кто-нибудь может мне помочь.
Это в основном мой класс модели:
class Person(EmbeddedDocument):
oid = ObjectIdField(required=True, default=ObjectId,
unique=True, primary_key=True, sparse=True)
personName = StringField()
charakterEntries= ListField()
class schoolClass(Document):
className= StringField(unique=true)
persons = ListField(EmbeddedDocumentField(Personn))
, поэтому я хочу go в специфику c человек указанного класса c и вставьте новую запись характера в список listField charakterEntries.
Допустим, у меня есть className "chemistry"
и я хочу вставить новый charakter entry "polite"
в ListField "charakterEntries"
Человека, который имеет oid="abc123"
.
Хотя я мог бы сделать что-то вроде этого:
person= Person.objects(oid=id).get()
person.charakterEntries.append("polite")
person.save()
Но тогда я получаю следующую ошибку: AttributeError: type object 'Person' has no attribute 'objects'
Кто-нибудь знает, как решить эту проблему? Я много чего перепробовал здесь на stackoverflow, но не смог заставить его работать. Поэтому, пожалуйста, не закрывайте этот вопрос сразу.
Спасибо: -)