Abaixo está o meu código
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var Cat = mongoose.model('Cat', {
name: String,
age: {type: Number, default: 20},
create: {type: Date, default: Date.now}
});
Cat.findOneAndUpdate({age: 17}, {$set:{name:"Naomi"}},function(err, doc){
if(err){
console.log("Something wrong when updating data!");
}
console.log(doc);
});
Eu já tenho algum registro no meu banco de dados mongo e gostaria de executar esse código para atualizar o nome para a idade de 17 anos e depois imprimir o resultado no final do código.
No entanto, por que ainda recebo o mesmo resultado do console (não o nome modificado), mas quando vou para a linha de comando do mongo db e digito " db.cats.find();
". O resultado veio com nome modificado.
Então volto a executar esse código novamente e o resultado é modificado.
Minha pergunta é: se os dados foram modificados, por que ainda obtive dados originais na primeira vez em que console.log os dados.