相关疑难解决方法(0)

NodeJS + MongoDB:使用findOne()从集合中获取数据

我有一个集合"公司"与几个对象.每个对象都有"_id"参数.我正试图从db获取此参数:

app.get('/companies/:id',function(req,res){
db.collection("companies",function(err,collection){
    console.log(req.params.id);
    collection.findOne({_id: req.params.id},function(err, doc) {
        if (doc){
            console.log(doc._id);
        } else {
            console.log('no data for this company');
        }
    });
});
});
Run Code Online (Sandbox Code Playgroud)

所以,我要求公司/ 4fcfd7f246e1464d05000001(4fcfd7f246e1464d05000001是我需要的对象的_id-parma)并且findOne什么都不返回,这就是'为什么console.log('没有这家公司的数据'); 执行.

我绝对相信我有一个_id ="4fcfd7f246e1464d05000001"的对象.我做错了什么?谢谢!

但是,我刚刚注意到id不是典型的字符串字段.这就是mViewer所展示的:

"_id": {
        "$oid": "4fcfd7f246e1464d05000001"
    },
Run Code Online (Sandbox Code Playgroud)

似乎有点奇怪......

mongodb node.js express

16
推荐指数
1
解决办法
3万
查看次数

标签 统计

express ×1

mongodb ×1

node.js ×1