Poniżej znajduje się mój kod
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);
});
Mam już trochę danych w bazie danych Mongo i chciałbym uruchomić ten kod, aby zaktualizować nazwę, dla której wiek to 17 lat, a następnie wydrukować wynik na końcu kodu.
Jednak dlaczego wciąż otrzymuję ten sam wynik z konsoli (nie zmodyfikowaną nazwę), ale kiedy idę do wiersza polecenia mongo db i wpisuję „ db.cats.find();
”. Wynik przyszedł ze zmodyfikowaną nazwą.
Następnie wracam, aby ponownie uruchomić ten kod i wynik jest modyfikowany.
Moje pytanie brzmi: jeśli dane zostały zmodyfikowane, to dlaczego wciąż otrzymałem oryginalne dane przy pierwszym logowaniu na konsoli.log.