MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Insira ou atualize no Mongo usando o mangusto e modifique os elementos internos durante a atualização


O Mongoose agora suporta isso nativamente com findOneAndUpdate (chama MongoDB findAndModify).

A opção upsert =true cria o objeto se ele não existir. o padrão é falso.
MyModel.findOneAndUpdate(
    {foo: 'bar'}, // find a document with that filter
    modelDoc, // document to insert when nothing was found
    {upsert: true, new: true, runValidators: true}, // options
    function (err, doc) { // callback
        if (err) {
            // handle error
        } else {
            // handle document
        }
    }
);