Ich habe ein Problem, das ich vorher noch nicht gesehen habe mit dem Mongoose findByIdAndUpdate, das nicht das korrekte Modell im Callback zurückgibt.Mongoes findByIdAndUpdate gibt kein korrektes Modell zurück
Hier ist der Code:
var id = args._id;
var updateObj = {updatedDate: Date.now()};
_.extend(updateObj, args);
Model.findByIdAndUpdate(id, updateObj, function(err, model) {
if (err) {
logger.error(modelString +':edit' + modelString +' - ' + err.message);
self.emit('item:failure', 'Failed to edit ' + modelString);
return;
}
self.emit('item:success', model);
});
Das Originaldokument in der db wie folgt aussieht:
{
_id: 1234
descriptors: Array[2],
name: 'Test Name 1'
}
Die updateObj in das sieht aus wie gehen:
{
_id: 1234
descriptors: Array[2],
name: 'Test Name 2'
}
Das Modell zurück aus dem Callback ist identisch mit dem ursprünglichen Modell, nicht das updatedObj. Wenn ich die db abfrage, wurde es korrekt aktualisiert. Es wird einfach nicht von der Datenbank zurückgegeben.
Das fühlt sich an wie ein "blöder Benutzer" Fehler, aber ich kann es nicht sehen. Irgendwelche Ideen sehr geschätzt.
, dass eine ehrfürchtige Stelle ist. Und eine Erinnerung, warum ich alle meine Projekte auf Versionen halten muss, da dieses Paket seine eigenen Komponententests bestanden hat. Vielen Dank. – JonRed