如何根据请求查询集合中的不同字段?
例如,我有一个名为Cars的收藏。其结构如下: { make:字符串, 年:数字, 型号:ing }
如果请求如下所示:{make:“ Toyota”},则需要查询“ make”属性。
如果请求如下所示:{year:2000},则需要查询“ year”属性。
如果请求看起来像这样:{make:“ Toyota”,型号:“ Camry”}},我需要同时查询“ make”和“ model”属性。
答案 0 :(得分:0)
MongoDB使用Javascript对象来查询文档。例如:
db.collection.find(QueryObject)
其中 QueryObject 具有键和值,在您的情况下,可以为 {make:“ Toyota”} 。接收到的请求已经在对象表示法中,因此,如果直接将其传递给 collection.find()方法,它应该可以工作。
但是,这不是安全的做法,因为它允许您的客户直接请求任何数量的数据,而无需进行健全性检查。不安全的查询会导致许多问题。
答案 1 :(得分:0)
就像这样:-
Reserve.find({event_id:events._id,event_id2:events._id2}, function (err, reservations) {
if (err) return res.status(500).send("There was a problem finding the reservation.");
})