Ich brauche Hilfe mit diesem. Ich habe dieses Knotenprojekt, das von Anfang an gearbeitet hat. Kürzlich fing ich an, einen Fehler über Mungo zu bekommen, der __v ein __v zur gleichen Zeit (Details unten) nicht aktualisieren konnte Mein erster Gedanke war, dass ein neues Update von Mungo dies verursachte, aber ich bin mir nicht sicher. Jede Hilfe wird geschätzt. DankMongoose Fehler: Kann __v und __v nicht gleichzeitig aktualisieren
/.../node_modules/mongoose/lib/utils.js:413
throw err;
^
MongoError: exception: Cannot update '__v' and '__v' at the same time
at Object.toError (/.../node_modules/mongoose/node_modules/mongodb/lib/mongodb/utils.js:114:11)
at /.../node_modules/mongoose/node_modules/mongodb/lib/mongodb/db.js:1131:31
at /.../node_modules/mongoose/node_modules/mongodb/lib/mongodb/db.js:1846:9
at Server.Base._callHandler (/.../node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/base.js:445:41)
at /.../node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/server.js:478:18
at MongoReply.parseBody (/.../node_modules/mongoose/node_modules/mongodb/lib/mongodb/responses/mongo_reply.js:68:5)
at null.<anonymous> (/.../node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/server.js:436:20)
at EventEmitter.emit (events.js:95:17)
at null.<anonymous> (/.../node_modules/mongoose/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:201:13)
at EventEmitter.emit (events.js:98:17)
EDIT Sieht aus wie der Fehler ausgelöst wird, wenn ich zu retten versuchen. Hier ist die sichere Methode, die ich anrufe;
save: function (callback) {
// A Helper function
function setID(instance, id) {
instance._id = id;
};
var self = this; // Preserve reference to the instance
var update = Utils.clone(this);
delete update._id; // Delete the _id property, otherwise Mongo will return a "Mod on _id not allowed" error
// Prepare updates for saving
for (var key in update) {
if (update[key] == undefined)
delete update[key];
if (key == 'company' || key == 'local_currency')
update[key] = update[key].getID();
}
PreferenceModel.save(this._id, update, function (err, savedDoc) {
if (err) callback(err);
else {
if (!self.getID()) // If the object didn't previously have an _id property
setID(self, savedDoc._id);
callback(null, self);
}
});
}
und hier ist, wo ich es nenne;
preference.save(function (err, savedPreference) {
if (err) callback(err);
else callback(null);
});
auch, hier ist PreferenceModel.save Methode;
function save(id, update, callback) {
Preference.findByIdAndUpdate(id, update, {upsert: true}, function (err, savedDoc) {
if (err) callback(err);
else callback(null, savedDoc);
});
}
Können Sie Ihre Frage bearbeiten, um Ihren Code einzuschließen, der den Fehler verursacht? – JohnnyHK
Ja, wir werden hier Code sehen müssen. –
Ok, ich habe den Code – user3863128