mongoose中的填充函数是做什么的?
当我阅读http://mongoosejs.com/docs/populate.html时,我不明白这个问题。 我不完全理解populate
函数的作用。 我从meanjs
示例源代码中挑选出来的:
Article.find().sort('-created').populate('user', 'displayName').exec(function (err, articles) { if (err) { return res.status(400).send({ message: errorHandler.getErrorMessage(err) }); } else { res.json(articles); }});
提前致谢。
在Article
文档中,您正在存储用户的userId。
现在,当查询Article
文件,你想获得用户的文章,然后你可以使用填充。
现在,当您访问articles[index].user
,它将返回对象而不是ObjectId
值(用户的_id
属性)。
第二个参数定义应该在User
对象中检索哪个字段。 这里是displayName
。 所以它会检索User
_id
和displayName
。 如果你想排除_id,你可以指定“-_id displayName”