所以我有一个简单的查询:
var query = postModel.find({ //etc });
query.exec(function(err, posts) {
});
然后我有一个模型方法:
PostSchema.method('deepPopulate', function(cb) { //stuff });
在我的其他发现中,我可以这样做:
post.deepPopulate(function(err, post) {});
哪个适用于findOne()
,但如何在find()
的结果中对帖子集合运行相同的模型函数?
答案 0 :(得分:2)
async.map(posts, function (post, done) {
post.deepPopulate(done);
}, function (err, posts) {
// ... do yaw thang
});
答案 1 :(得分:0)
假设您没有在查询中使用lean
属性,则每个结果都应该是方法deepPopulate()
的模型对象:
var query = postModel.find({ //etc });
query.exec(function(err, posts) {
for each ( var post in posts ) {
post.deepPopulate(); //Or however you use this guy.
}
});