Ниже мой код
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);
});
У меня уже есть какая-то запись в моей базе данных mongo, и я хотел бы запустить этот код, чтобы обновить имя, для которого 17 лет, а затем распечатать результат в конце кода.
Однако, почему я все еще получаю тот же результат из консоли (не измененное имя), но когда я иду в командную строку mongo db и db.cats.find();
" db.cats.find();
". Результат пришел с измененным именем.
Затем я снова запускаю этот код, и результат изменяется.
Мой вопрос: если данные были изменены, то почему я все еще получил оригинальные данные в первый раз, когда console.log их.