sql >> Database >  >> NoSQL >> MongoDB

hoe geneste object van mangoestdocument bij te werken voor alleen verstrekte sleutels

Zoals de meeste antwoorden aangeven, moet je de puntnotatie om ingebedde documenten bij te werken en uw bovenstaande vraag te beantwoorden, gebruikt u de volgende hulpmethode die recursie toepast om een ​​bepaald object naar zijn puntnotatieweergave te converteren:

function convertToDotNotation(obj, newObj={}, prefix="") {

  for(let key in obj) {
      if (typeof obj[key] === "object") {
          convertToDotNotation(obj[key], newObj, prefix + key + ".");
      } else {
          newObj[prefix + key] = obj[key];
      }
  }

  return newObj;
}


let params = {
   address: {
      city: {
         location: {
            street: "new street"
         }
      }  
   }
};

const dotNotated = convertToDotNotation(params);
console.log(JSON.stringify(dotNotated, null, 4));


  1. Een object binnen een array bijwerken met PyMongo

  2. Max en groeperen in Mongodb

  3. Krijg positie van geselecteerd document in verzameling [mongoDB]

  4. Mongo ObjectId (_id) genereren met aangepaste tijd?