我需要匹配mongodb数据库中从前端传递的名称。 如果从前端传递多个名称,我可以通过请求将它们作为数组。我正在尝试使用$ in来匹配从前端传递的名称。
如果我使用for循环并形成动态变量,我没有得到任何结果。
nameList = NameDetails[0];
for(var i=1; i< NameDetails.length; i++){
nameList = nameList +"," +NameDetails[i].trim();
}
或
for(var i=1; i< NameDetails.length; i++){
nameList = nameList + ",\""+NameDetails[i].trim()+"\"";
}
NameDetail.aggregate([
{ $match : {names: {$in: nameList } } },
], function(err, res){
//
}
如果我直接访问如下,我得到结果
NameDetail.aggregate([
{ $match : {names: {$in: NameDetails[0], NameDetails[1]} } },
], function(err, res){
//
}
请帮我解决这个问题。提前致谢。