mongoose模型$在查询不工作

我试图在访问我的API时运行mongodb上的查询,但是这是行不通的。 它总是给我一个错误。

如果我使用db.my_collection.find({ingredient_name:[“olive”,“oil”]})在mongo客户端上search,那么它可以很好地工作。

我的代码如下所示:

exports.show = function(req, res) { var tmp = req.params.id.split(","); var search = JSON.stringify(tmp); console.log("searching for "+search); ComplementaryFood.find({ ingredient_name : { $in : search } } ,function (err, complementary_food) { if(err) { return handleError(res, err); } if(!complementary_food) { return res.send(404); } return res.json(complementary_food); }); }; 

search是像“橄榄油”,“油”或“啤酒”等JSON。

请帮忙,我已经阅读了moongose的文档,尝试了很多不同的东西,没有工作…

顺便说一句。 我的项目build立在yoman的angular度全叠层发生器上

$in接受一个数组值,而不是一个string。 所以不要串化tmp ,直接使用它:

 ComplementaryFood.find({ ingredient_name : { $in : tmp } }, ...