如何在猫鼬get call中包含网址过滤器参数

时间:2018-12-08 09:12:12

标签: mongodb mongoose restify

我已经为mongoose + restify编写了一个get调用,该调用通过req.params成功返回了变量(例如所有奶酪类型名称)下的一组值,但是我想添加过滤器功能,例如Cheese?type =蓝色。我知道可以通过req.query访问这些url参数,但是我不确定如何通过cheese.find函数传递它们。

如果标准情况是:

奶酪= cheese.find({“ name”:req.params.name})

我应该如何包含req.query?

谢谢!

1 个答案:

答案 0 :(得分:1)

这非常简单,您只需使用AND就可以学习MongoDB。

对于您的情况,可以使用以下示例:

如果类型在相同集合中,则可以使用下面的示例。

const params = req.params;
const query = req.query;

cheese = cheese.find({ $and: [ params, query ]})

如果类型在不同集合中,则可以尝试在MongoDB中学习聚合。

仅此而已。

我希望它能为您提供帮助。