_idでレコードを削除できないのはなぜですか?
コード:
db.collection('posts', function(err, collection) {
collection.remove({_id: '4d512b45cc9374271b00000f'});
});
_id
値を文字列ではなくObjectIDとして渡す必要があります:
var mongodb = require('mongodb');
db.collection('posts', function(err, collection) {
collection.deleteOne({_id: new mongodb.ObjectID('4d512b45cc9374271b00000f')});
});
MongoDbは、removeメソッドを非推奨としてマークしました。これは、deleteOneとdeleteManyの2つの別個のメソッドに置き換えられました。
関連する入門ガイドは次のとおりです。 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");
});
});