这里是nodejs/mongoDB的新手。我试过了,没有成功 在在这里发帖之前找到我的问题的答案。
我正在使用 Mongoose 创建一个简单的 Node RESTAPI 获取服务。我正在尝试传递集合的字段值来检索特定文档。
在浏览器中像这样http://localhost:3000/infrakpi/fieldvalue
我写了下面这段代码。
app.get('/infrakpi/:system',(req, res) => {
Infrakpi.getInfrakpiBySystem(req.params.system, function(err, infrakpibysystem){
if (err) {
throw err;
}
res.json(infrakpibysystem);
});
});
我在我的 Mongoose 模型中定义了 get 方法,如下所示。
//Get Infrakpi by System
module.exports.getInfrakpiBySystem = function (system, callback) {
Infrakpi.find({system: 'system'}, callback)
}
当系统作为restURL中的字段值传递时,我想检索集合中的特定文档。
我知道这可能是非常基本的问题,但当我使用 findById 作为 _id 字段时,我得到了结果。但客户端只会调用特定字段。
感谢您的帮助。
最佳答案
不确定我是否可以称之为 stackoverflow 运气。我忽略了模型中 get 方法中的引号。一旦我删除它们,它就起作用了。
//Get Infrakpi by System
module.exports.getInfrakpiBySystem = function (system, callback) {
Infrakpi.find({system: system}, callback)
}
如果将来可以帮助其他人,我将问题留在这里而不删除。
关于node.js - 在 Mongoose 中传递 REST URL 参数作为查询条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48107266/