Node.js 是否按id删除记录?

Node.js 是否按id删除记录?,node.js,mongodb,node-mongodb-native,Node.js,Mongodb,Node Mongodb Native,为什么我不能按_id删除记录 代码: 您需要将\u id值作为ObjectID传递,而不是字符串: var mongodb = require('mongodb'); db.collection('posts', function(err, collection) { collection.deleteOne({_id: new mongodb.ObjectID('4d512b45cc9374271b00000f')}); }); MongoDb现在已将remove方法标记为已弃用。它

为什么我不能按_id删除记录

代码:


您需要将
\u id
值作为ObjectID传递,而不是字符串:

var mongodb = require('mongodb');

db.collection('posts', function(err, collection) {
   collection.deleteOne({_id: new mongodb.ObjectID('4d512b45cc9374271b00000f')});
});

MongoDb现在已将remove方法标记为已弃用。它已被两个单独的方法所取代:deleteOne和deleteMany

以下是他们的相关入门指南:

下面是一个快速示例:

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");
    });
});
首先包括mongodb

var mongodb = require("mongodb");
您必须包含来自mongodb的ObjectID

var ObjectID = require('mongodb').ObjectID;
然后使用

var delete_id = request.params.id;//your id

 collection.deleteOne({_id: new mongodb.ObjectID(delete_id.toString())});

1000%适用于…

使用TypeScript,您可以使用导入来创建它,而不需要整个库

import { ObjectID } from 'mongodb'   

 

db.collection('posts', function(err, collection) {
   collection.deleteOne({_id: new ObjectID('4d512b45cc9374271b00000f')});
});

可以立即删除id数组吗?@Denis当然可以,只需使用:
{u id:{$in:idsArray}}
在文档中找不到这个答案,非常有用
import { ObjectID } from 'mongodb'   

 

db.collection('posts', function(err, collection) {
   collection.deleteOne({_id: new ObjectID('4d512b45cc9374271b00000f')});
});