我有一个包含多个对象的集合“公司”。每个对象都有“_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');
}
});
});
});
因此,我请求 company/4fcfd7f246e1464d05000001 (4fcfd7f246e1464d05000001 是我需要的对象的_id-parma)并且 findOne 什么也没返回,这就是为什么 console.log('no data for this company'); 执行。
我绝对确定我有一个 _id="4fcfd7f246e1464d05000001" 的对象。我做错了什么?谢谢!
但是,我刚刚注意到 id 不是典型的字符串字段。这就是 mViewer 显示的内容:
"_id": {
"$oid": "4fcfd7f246e1464d05000001"
},
好像有点奇怪……