ListField(DictField()) 与 mongoengine

use*_*828 3 mongodb mongoengine python-2.7

如何使用 mongoengine 访问 ListField(DictField()) 并访问它,因为下面的代码不起作用?

from mongoengine import *

class Test():
    g = ListField(DictField(Mapping.build(
    test1=StringField(required=True),
    test2=StringField(required=True)
)))
Run Code Online (Sandbox Code Playgroud)

小智 5

我承认这篇文章很旧,但对于任何从使用 mongoengine 开始发现这个线程的人来说。为了改进 Niranj 的答案,现在存在一个EmbeddedDocumentListField并且您需要从这些类继承EmbeddedDocumentDocument在这些类中继承。

class classEmbed(EmbeddedDocument):
    t = StringField()
    p = StringField()

class Test(Document):
    g = EmbeddedDocumentListField(classEmbed)
Run Code Online (Sandbox Code Playgroud)

该文件是在这里场下