为什么我不能通过_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相关问答推荐

在MongoDB Aggregate for My BooksDB中将`$match`放在`$unwin`之前或之后的区别

所有文档中嵌套 struct 中的条件匹配-mongodb

MongoDB 投影按数组中的字符串长度排序

分组前的 MongoDb 聚合总数

(MongoDB)在同一管道中结合联合和交集

如何替换mongodb中的动态键?

如何过滤查找mongodb的结果

Mongoose 返回包含属性内任何位置的值的所有文档

在推入 mongodb 时自动填充 golang struct 中的 created_at 和 updated_at

从 PHP 打印 MongoDB 日期

如何在 mongodb 中设置整数的默认值?

指定字段对于 MongoDB 是transient瞬态的,但对于 RestController 不是

什么是 mongodb 中的admin数据库?

无法连接到远程 mongodb 服务器

MongoDB - 我如何找到另一个集合中的文档未引用的所有文档

当前的 URL 字符串解析器已弃用

Mongoose - 获取 _id 列表而不是具有 _id 的对象数组

MongoDB:聚合框架: $match between fields

试图从 mongoose 获取Collection 列表

Mongoose 为所有嵌套对象添加 _id