Sab*_*ble 16 mongodb node.js node-mongodb-native
为什么我不能通过_id删除记录?
码:
db.collection('posts', function(err, collection) {
collection.remove({_id: '4d512b45cc9374271b00000f'});
});
Run Code Online (Sandbox Code Playgroud)
Joh*_*yHK 47
您需要将_id
值作为ObjectID 传递,而不是字符串:
var mongodb = require('mongodb');
db.collection('posts', function(err, collection) {
collection.deleteOne({_id: new mongodb.ObjectID('4d512b45cc9374271b00000f')});
});
Run Code Online (Sandbox Code Playgroud)
MongoDb现已将remove方法标记为已弃用.它已被两个单独的方法取代:deleteOne和deleteMany.
以下是他们相关的入门指南:https://docs.mongodb.org/getting-started/node/remove/
这是一个快速的样本:
var mongodb = require('mongodb');
db.collection('posts', function(err, collection) {
collection.deleteOne({_id: new mongodb.ObjectID('4d512b45cc9374271b00000f')}, function(err, results) {
if (err){
console.log("failed");
throw err;
}
console.log("success");
});
});
Run Code Online (Sandbox Code Playgroud)