MongoDB / ExpressJS – 当ObjectID包含在variables中时,通过_id删除文档

这是我想要做的:

app.delete('/:id', function(req, res){ var removal = req.params.id; MongoClient.connect(dbUrl, function(err, db){ var test = db.collection('test'); test.remove({ _id: ObjectId(removal) }); }); }); 

但是当我尝试的时候,它会抛出一个错误,因为ObjectId没有被定义。 我在这个问题上遇到了一些麻烦,因为当我在Jade视图中使用item._id时,它只是返回数字,但当然查询集合时不会收回数字。

那么你是否将ObjectId定义为一个函数?

尝试:

 var ObjectId = require('mongodb').ObjectId; 

(与您获得对MongoClient的引用的方式MongoClient