首页 > MongoEngine 的 EmbeddedDocumentField 和 ReferenceField 有什么区别?

MongoEngine 的 EmbeddedDocumentField 和 ReferenceField 有什么区别?

有个示例是这样的,但是没看懂区别:

from mongoengine import *

class User(Document):
    name = StringField()

class Comment(EmbeddedDocument):
    title = StringField()
    text  = StringField()

class Post(Document):
    title    = StringField()
    author   = ReferenceField(User)
    comments = ListField(EmbeddedDocumentField(Comment)) 

顾名思义,EmbeddedDocument是包含在父Document里的一组数据,没有单独的Collection。
ReferenceDocument有自己独立的Collection,引用它的Docuemnt中只包含一个Id

【热门文章】
【热门文章】