操作返回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();
});
答案 0 :(得分:1)
尝试将ctx.params.id
投射到ObjectId
,这就是mongodb在内部存储标识符的方式。
import { ObjectId } from 'mongodb'
id = ObjectId(ctx.params.id)