例如,在任何给定的运行时,
Books = {
CatSelect : ["SciFi", "Humor", "History"],
MinPages : [300,50,500]
};
如果我在下面的函数中手动编写查询find
,它会按预期工作并找到页数大于指定类别中指定数量的书籍。
MyCollection.find({ $or: [ { Category: Books.CatSelect[0], Pages : { $gte: Books.MinPages[0] } }, { Category: Books.CatSelect[1], Pages : { $gte: Books.MinPages[1] } } ] }).execFind(function(err,result){
...
}
但问题是我不知道会选择多少个类别,上面的示例是.find
为 2 个类别设置示例。
如何将不同数量的标准动态地放入.find
函数中?
当然,我可以将所有条件放在一个字符串中,但查询既不是字符串也不是 JSON,所以我有点迷路了。