如何使用node-mongodb-native驱动程序删除文档?

时间:2017-02-05 10:41:25

标签: node.js mongodb

操作返回deleted: 0

const res = await ctx.db.collection(this.col).removeOne({ _id: ctx.params.id });

不确定我在这里做错了什么。 { _id: <id> }的GET请求似乎工作正常。

ctx.params.id已定义,与数据库中的ObjectId相同。

根据此文档,您可以collection.removeOne()(参见示例2)https://mongodb.github.io/node-mongodb-native/2.2/api/Collection.html#remove

// Remove all the document
collection.removeOne({a:1}, {w:1}, function(err, r) {
  test.equal(null, err);
  test.equal(1, r.result.n);
  db.close();
});

1 个答案:

答案 0 :(得分:1)

尝试将ctx.params.id投射到ObjectId,这就是mongodb在内部存储标识符的方式。

import { ObjectId } from 'mongodb'

id = ObjectId(ctx.params.id)