如何使用mongoengine ListField(DictField())并访问它,因为下面的代码不起作用?
from mongoengine import *
class Test():
g = ListField(DictField(Mapping.build(
test1=StringField(required=True),
test2=StringField(required=True)
)))
答案 0 :(得分:4)
尝试使用此格式
class classEmbed: t = StringField() p = StringField() class Test: g = ListField(EmbeddedDocumentField(classEmbed))
答案 1 :(得分:4)
我认识到这篇文章很老了,但是对于任何发现这个帖子开始使用mongoengine的人来说。为了改进Niranj的答案,现在存在EmbeddedDocumentListField
,您需要从这些类中的EmbeddedDocument
或Document
继承。
class classEmbed(EmbeddedDocument):
t = StringField()
p = StringField()
class Test(Document):
g = EmbeddedDocumentListField(classEmbed)
文档在“字段
”下为here