我有一个集合"公司"与几个对象.每个对象都有"_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)
似乎有点奇怪......