我有这个问题:
Book.findById(someId).populate({
path: 'pages'
}).exec(function(err) {});
Mongoose文档指出,首先,在Books
集合中查找查找文档的查询已完成,然后继续查询Pages
集合中的子文档。
我想在访问链式Book.findById()
方法之前访问populate()
查询返回的文档。我怎么能这样做?
我需要这个在options
populate()
对象中设置一个值,如下所示:
Book.findById(someId).populate({
path: 'pages',
options: {
skip: book.pages.indexOf(someElementInPagesArray) // Need to access doc
}
}).exec(function(err) {});
希望你们能帮忙。
答案 0 :(得分:1)
你可以像这样单独调用populate:
Book.findById(someId).exec(function(err, book) {
book.populate({
path: 'pages',
options: {
skip: book.pages.indexOf(someElementInPagesArray)
}
}, function(err, book) {
// Populate done
})
});