sql >> Database teknologi >  >> NoSQL >> MongoDB

Mongoose fejl:Kan ikke opdatere __v og __v på samme tid

Jeg foreslår, at du indsætter _id-relateret slettelogik i din mongoose model Schema definition fil:

var UserSchema = new mongoose.Schema(fieldDefinitions);

// Ensure virtual fields are serialised.
UserSchema.set('toJSON', {
    virtuals: true
});

// Ensure able to see virtual fields output when using console.log(obj)
UserSchema.set('toObject', {
    virtuals: true
});

UserSchema.options.toJSON = {

    transform : function(doc, ret, options) {

        console.log('--> ' + require('util').inspect( ret._id.id ));

        ret.id = ret._id.id;
        delete ret._id;
        delete ret.__v;

        return ret;
    },
    virtuals: true
};

Udfør derefter toJSON :

i dit tilbagekald
var processedJson = resultDoc.toJSON();

for at hente den behandlede version, som fint skjuler genbrugelig logik.
BEMÆRK:toJSON() udføres også på magisk vis af JSON.stringify()




  1. Hvordan løser jeg denne designbegrænsning i mongo db w.r.t til ydeevne?

  2. Pymongo forHver formatering

  3. MongoError:tilslut UNKENDT

  4. kalder en mongo-samling ved hjælp af en variabel