【发布时间】:2017-02-26 22:54:53
【问题描述】:
在我的 mongoose 数据库中,我有两个模型:Users 和 Comments。
在我的node.js 代码中,我有:
var Comment = require('./../models/commentsModel.js');
var User = require('./../models/usersModel.js');
现在我想用$lookup 构造一个查询以从Comments 和相应的Users 返回结果(当前Comments 包含一个字段user_id)。这是我目前所拥有的:
function executeQuery(query, callback) {
query = Comment.find(query);
Comment.aggregate([{$lookup:
{ from: "users",
localField: "user_id",
foreignField:"_id",
as: "user"
}}]);
query.exec(function(err, comments){
if(err) {
callback(err);
return;
}
return callback(null, comments);
});
}
但我没有看到来自User 的任何数据附加到来自Comment 的结果中。我错过了什么?
【问题讨论】:
标签: node.js mongodb mongoose mongodb-query aggregation-framework