Node.js Mongoose 并使用 find 和 request.params

标签 node.js mongodb mongoose

我有两个集合存储在 MongoDB 中:Markers 和 Pois

MarkerID 是 Pois 中的外键,Markers 中的主键。

我想返回具有特定标记 ID 的 Pois

我可以在 MongoDB 控制台中执行此操作:

>db.PoiPois.find({"MarkerID":78})

我还可以使用快速 RESTful 路由和 Mongoose 在 Node.js 应用程序中通过硬编码查询来完成此操作:

app.get('/pois/:markerid', function(req, res) {
 poiModel.find({MarkerID:78}, function (err,pois) {
        res.contentType('json');
    res.json({
        success: true,
      data: pois

    });
 });
});

我想使用markerid 的请求参数将硬编码查询替换为动态查询,因此请执行以下操作:

poiModel.find({MarkerID:req.params.markerid}, function (err,pois) {

但这不起作用(返回空 json)。

我哪里出错了?感谢您的帮助

最佳答案

我猜 req.params.markerid 是一个字符串。尝试将其转换为整数。

关于Node.js Mongoose 并使用 find 和 request.params,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9960463/

相关文章:

node.js - mongoose-findor在使用passport-facebook时创建重复的用户

mongodb - MapReduce MongoDB 用户代理

node.js - 在 node.js 和 Mongoose 中添加 friend 路线的正确方法?

node.js - Mongoose.js 忽略子文档架构中的默认值

javascript - nodemailer nodejs : sendmail exited with 127

node.js - 当我在控制台中构建项目时,阻止 VS Code 打开 Web 浏览器窗口

javascript - 如何从nodejs、mongoose mongodb集合中查找返回

linux - 是否有适用于 Linux 的 MongoDB GUI 桌面应用程序?

node.js - 如何使用 Moongoose 访问整个子文档(对象数组中的对象数组)?

通过 JSDom 的 JQuery 不是给出 TypeError 的仿函数