【发布时间】:2015-05-10 15:35:22
【问题描述】:
我有 3 个收藏:
事件:
{
_id: ObjectId(54ca0f2506d0c6b673b2fde8),
_reference: ObjectId("54fd786c549e96f70f9c027d")
},
{
_id: ObjectId(54acd81941a646d768922cfa),
_reference: ObjectId("54fd786c549e96f70f9c027d")
}
帖子:
{
_id: ObjectId(54fd786c549e96f70f9c027d),
title: "This is a post",
content: "This is the content of the post"
}
cmets:
{
_id: ObjectId(54fd786c549e96f70f9c027e),
content: "This is a comment on a post"
}
创建帖子或评论时,还会在集合“events”中创建一个文档,该文档具有名为“_reference”的属性。此“_reference”将保存评论或帖子的 ObjectId。
然后我需要恢复集合“事件”中每个文档中引用的所有文档(保存在其他集合中;即帖子和 cmets)。
我使用了填充方法,但它只允许我在需要签入所有现有集合时签入一个集合。
下面是我如何在猫鼬模型中定义参考属性的示例:
_reference: {type: Schema.Types.ObjectId, ref: 'posts'}
提前致谢!
【问题讨论】:
标签: javascript mongodb mongoose mongoose-populate