upsert mongoose code example
Example 1: mongoose find and update prop
var query = {'username': req.user.username};
req.newData.username = req.user.username;
MyModel.findOneAndUpdate(query, req.newData, {upsert: true}, function(err, doc) {
if (err) return res.send(500, {error: err});
return res.send('Succesfully saved.');
});
Example 2: mongoose findoneandupdate
const doc = await CharacterModel.findOneAndUpdate(
{ name: 'Jon Snow' },
{ title: 'King in the North' },
{ new: true }
);
doc.title;
Example 3: mongoose updateone example
await CharacterModel.updateOne({ name: 'Jon Snow' }, {
title: 'King in the North'
});
const doc = await CharacterModel.findOne();
doc.title;
Example 4: findone and update mongoose
Model.findOne({ name: 'Mr. Anderson' }).
then(doc => Model.updateOne({ _id: doc._id }, { name: 'Neo' })).
then(() => Model.findOne({ name: 'Neo' })).
then(doc => console.log(doc.name));
const doc = await Model.findOne({ name: 'Neo' });
console.log(doc.name);