[英]aggregate returns empty array - mongoose
我有以下兩個簡單的查詢:
Comment.aggregate([{$match: { _id: req.params.id }}])
.exec(function(err, result) {
// result is empty
});
Comment.find({ _id: req.params.id })
.exec(function (err, result) {
// correct result returned
});
我的問題是,聚合函數返回一個空數組。 他們不應該返回相同的結果嗎?
是的,但您需要將 id(這是一個字符串)轉換為 objectID :)
let idToSearch = mongoose.Types.ObjectId(req.params.id)
Comment.aggregate([{$match: { _id: idToSearch }}])
.exec(function(err, result) {
// result is now correct :)
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.