Я пытаюсь получить все атрибуты одного внедренного документа по идентификатору.
Это в основном мой код:
class Person(EmbeddedDocument):
oid = ObjectIdField(required=True, default=ObjectId,
unique=True, primary_key=True, sparse=True)
personName = StringField()
address= ListField()
age=IntegerField()
class Personlist(Document):
listName= StringField(unique=true)
persons = ListField(EmbeddedDocumentField(Personn))
, и теперь я хочу, чтобы человек например: oid: "123ab c".
Я уже пробовал это:
person= Personlist.objects.get(person__oid="123abc").person
, но это дает мне всех людей из списка людей, в котором находится выбранный человек. Но я хочу получить только этого человека.
Если я попробую что-то вроде этого:
person= Person.objects(oid="123abc").get
или:
person= Person.get(oid="123abc")
Я получу AttributeError
, который говорит, что type object "Person" has no attribute "get" or "objects"
.
Есть ли способ получить только один EmbeddedDocument
к oid
и не каждому человеку Personlist
?