Node.js Mongoose-查找匹配的数组值
我正在使用Node.js创建一个RESTAPI,使用Mongoose访问后端MongoDB数据库。我的一个集合(也是变体)中有一个数组(变体),需要检索数组中与提供的值匹配的对象 到目前为止,我得到了一个返回空值的结果Node.js Mongoose-查找匹配的数组值,node.js,mongodb,rest,api,mongoose,Node.js,Mongodb,Rest,Api,Mongoose,我正在使用Node.js创建一个RESTAPI,使用Mongoose访问后端MongoDB数据库。我的一个集合(也是变体)中有一个数组(变体),需要检索数组中与提供的值匹配的对象 到目前为止,我得到了一个返回空值的结果 //Get variation by ID app.get('/v1/:id', async (request, response) => { try { var result = await variationsModel.find({ 'vari
//Get variation by ID
app.get('/v1/:id', async (request, response) => {
try {
var result = await variationsModel.find({ 'variationID': request.params.id }).exec();
response.send(result);
} catch (error) {
response.status(500).send(error);
}
})
这是我在API中定义的模型
const variationsModel = mongoose.model("variations", {
"variations": [
{
"variationID": String,
"custID": String,
"projID": String,
"variationTitle": String,
"variationDesc": String,
"variationStatus": String,
"variationChargeable": String,
"variationCost": String,
"requireMaterial": String,
"variationRequestor": String,
"variationCreationDate": String,
"variationImages": [
{
"imageId": String
}
],
"variationCategory": String
}
]
});
有人给我指出正确的方向吗
谢谢 查询应该是
variationsModel.find({ 'variations.variationID': request.params.id }).exec();
当然是!谢谢你的帮助!