I have a collection named "permissions" on MongoDB. I want to implement a simple update like this:
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();
});
However I receive { ok: 0, n: 0, nModified: 0 }
in console log of docs
and null
in console log of err
.
What am I doing wrong?
According to the docs
Models are fancy constructors compiled from Schema definitions. An instance of a model is called a document. Models are responsible for creating and reading documents from the underlying MongoDB database.
So you need to create instance during the .save()
call only. Other operations(update, read, delete) applied on the existing document and hence, no need to create instance.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With