sql >> Databasteknik >  >> NoSQL >> MongoDB

_.merge kloner underdokument istället för att uppdatera

Testa att använda _.extend eller _.assign istället:

var updated = _.assign(entry, req.body);

Detta svar av ShitalShah belyser skillnaderna mellan sammanfogning och förlängning som orsakar dubbletter i ditt resulterande objekt med sammanfogning, men i huvudsak:

JSBin för att illustrera skillnaderna:

var dest = {
  p: { x: 10, y: 20},
};

var src = {
  p: { x: 20, z: 30},
};

console.log(_.merge(dest, src)); 
/*
[object Object] {
  p: [object Object] {
    x: 20,
    y: 20,
    z: 30
  }
}
*/

console.log(_.extend(dest, src));
/*
[object Object] {
  p: [object Object] {
    x: 20,
    z: 30
  }
}
*/



  1. Det går inte att skapa index på grund av TypeError:inte tillräckligt med argument för formatsträng

  2. Sortering på Flera fält mongo DB

  3. Räkna förekomster i kapslade mongodb-dokument och lagringsgrupp

  4. Mongoose underdokument pre remove middleware som inte anropas