Массив, хранящийся в моем MongoDB, выглядит следующим образом:
[
{
"_id": "1",
"name": "X",
"age": "2",
"createdAt": "2020-02-29T22:22:49.491Z",
"updatedAt": "2020-02-29T22:22:49.491Z",
"__v": 0
},
{
"_id": "2",
"name": "A",
"age": "3",
"createdAt": "2020-02-28T22:22:49.491Z",
"updatedAt": "2020-02-28T22:22:49.491Z",
"__v": 0
},
{
"_id": "3",
"name": "B",
"age": "2",
"createdAt": "2020-02-29T12:22:49.491Z",
"updatedAt": "2020-02-29T12:22:49.491Z",
"__v": 0
}
]
Как видите, 2 объекта имеют одинаковое age
как 2 и 1 имеют age
как 3. Я хочу запросить у node.js на age
, поэтому, когда я запрашиваю по age
2, я получаю массив с объектами, имеющими age
2. В настоящее время findById
работает для меня с запросом как id
.
Вот код:
exports.findByAge = (req, res) => {
Property.findById(req.params.propertyId)
.then(property => {
if (!property) {
return res.status(404).send({
message: "Not found " + req.params.propertyId
});
}
res.send(property);
}).catch(err => {
if (err.kind === 'ObjectId') {
return res.status(404).send({
message: "Not found with id " + req.params.propertyId
});
}
return res.status(500).send({
message: "Error retrieving property with id " + req.params.propertyId
});
});
};
Как запросить по age
?