Javascript 使用其id从MongoDB获取对象
让我先解释一下我的问题。 我试图从URL获取ID,并使用它在数据库(MongoDB)中查找记录。下面是我在NodeJS Express应用程序中的代码Javascript 使用其id从MongoDB获取对象,javascript,node.js,mongodb,express,Javascript,Node.js,Mongodb,Express,让我先解释一下我的问题。 我试图从URL获取ID,并使用它在数据库(MongoDB)中查找记录。下面是我在NodeJS Express应用程序中的代码 app.post('/dashboard/profile/update/:id',function(req,res){ var to_update=req.params.id; var firstName=req.body.fname; obj_to_search={_id:to_update}; db.open(func
app.post('/dashboard/profile/update/:id',function(req,res){
var to_update=req.params.id;
var firstName=req.body.fname;
obj_to_search={_id:to_update};
db.open(function(err, dbs) {
if(!err) {
dbs.collection('project',function(err, collection) {
//update
collection.findOne(obj_to_search, function(err, result) {
if (err) {
throw err;
} else {
res.send(result);
}
dbs.close();
});
});
}
});
});
如果我将ID硬编码为1,我将获得记录。但我不是通过这种方式获得记录的。但是,我已经使用console.log进行了检查,我通过URL获得的ID也是1。将字符串转换为整数
如果url中有一个变量-它是一个字符串。如果要使用数字查询数据库,则需要将其强制转换为一个数字,以便在查询中使用:
obj_to_search={_id: parseInt(to_update,10)};
在这两种情况下,要更新的类型是什么?您可能必须转换它。这实际上解决了我的问题:)我必须将ID从URL转换为int。