我在MongoDB上有一个名为“ permissions”的集合。 我想实现一个简单的更新,如下所示:
let schema = new Schema({
title: String
});
let Permissions = mongoose.model("Permission", schema);
let permission = new Permissions();
let query = {};
let newValues = {
$set: {
title: "Yes"
}
};
permission.updateOne(query, newValues, (err, docs) => {
console.log(err); // null
console.log(docs); // { ok: 0, n: 0, nModified: 0 }
if (err) return cast.error(err);
return cast.ok();
});
但是我在{ ok: 0, n: 0, nModified: 0 }
的控制台日志中收到docs
和null
在err
的控制台日志中。
我在做什么错了?
答案 0 :(得分:1)
根据docs
模型是从Schema定义编译的精美构造函数。 一个 模型的实例称为文档 。模特负责 从底层的MongoDB数据库创建和读取文档。
因此,您仅需要在.save()
调用期间创建实例。其他操作(更新,读取,删除)应用于现有文档,因此无需创建实例。