Mongoose stöder nu detta inbyggt med findOneAndUpdate (anropar MongoDB findAndModify).
Alternativet upsert =true skapar objektet om det inte finns. förinställningen är falsk .
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.');
});
I äldre versioner stöder Mongoose inte dessa krokar med denna metod:
- standardinställningar
- sättare
- validerare
- mellanprogram