当你不知道过滤器数组的大小时,如何在mongoDB(nodeJS)中实现逻辑查询参数



当我不知道在'and'逻辑运算符中要使用多少个过滤器时,我如何实现对mongoDb查询的过滤。

//Get ads from database
async function getAds() {
return ad = await ads.Ad.find()
.and(//filter using tags variable);
}

前端将在一个名为标签的数组中输入未知数量的标签,该数组看起来像这个

"Tags": ["karachi","lahore"]

问题是我不知道标签变量中有多少元素,前端会使用查询参数给我这些元素。任何帮助都将不胜感激。当我不知道数组中会有多少个标签时,我怎么能把所有这些标签分别写在和运算符中呢。

听起来你想要以下。。。

async function getAds() {
return ad = await ads.Ad.find({ "Tags": { $in: [ "karachi", "lahore" ] } });
}

最新更新