0
我想使用node.js訪問mongoDB中的子文檔ID,但是從語句獲得null輸出: review = location.reviews.id(req。 params.reviewid);使用node express框架訪問mongoDB中的子文檔ID
而且,結果得到印在控制檯,但在瀏覽器中,我得到一個錯誤,指出 「reviewId找不到」
我想使用node.js訪問mongoDB中的子文檔ID,但是從語句獲得null輸出: review = location.reviews.id(req。 params.reviewid);使用node express框架訪問mongoDB中的子文檔ID
而且,結果得到印在控制檯,但在瀏覽器中,我得到一個錯誤,指出 「reviewId找不到」
MongoDB提供$elemMatch
在子文件內搜索。你可以試試
db.locations.find({ _id: ObjectId("Your_locations_Id"), reviews: { $elemMatch: { id: ObjectId("Your_reviews_Id") } }})
在蒙戈殼。我不知道貓鼬,但應努力下
Loc.find("_id": mongoose.Types.ObjectId(req.params.locationid)).elemMatch("reviews", {"id": mongoose.Types.ObjectId(req.params.reviewsid)})
相反OD'location.reviews.id(req.params.reviewid);'用'location.reviews .find(function(review){return review.id === req.params.reviewid;});' – Molda
@Molda它仍然給出相同的輸出 –
console.log(review)的輸出是什麼; 'review = location.reviews.find(function(review){return review.id === req.params.reviewid;});' – Molda