MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

JSON ऑब्जेक्ट स्ट्रक्चर को डॉट नोटेशन में कैसे बदलें?

यह अधिकांश जरूरतों के लिए पर्याप्त लचीला होना चाहिए:

function dotNotate(obj,target,prefix) {
  target = target || {},
  prefix = prefix || "";

  Object.keys(obj).forEach(function(key) {
    if ( typeof(obj[key]) === "object" && obj[key] !== null ) {
      dotNotate(obj[key],target,prefix + key + ".");
    } else {
      return target[prefix + key] = obj[key];
    }
  });

  return target;
}

अपने excludesFields पर चलाएं इस प्रकार परिवर्तनशील:

dotNotate(excludeFields);

यह वर्तमान संरचना लौटाता है:

{ "Contact.Address" : 0, "Contact.Phone" : 0 }

तो आप इनलाइन भी कर सकते हैं:

things.findOne({}, {fields: dotNotate(excludeFields) })

या प्रक्षेपण के रूप में प्रदान करें:

var projection = { "fields": {} };
dotNotate(excludeFields,projection.fields);
things.findOne({}, projection);

जब तक आपको $push जैसे ऑपरेटरों की आवश्यकता न हो, सभी गहराई पर और यहां तक ​​कि एक आवश्यक तरीके से सरणियों के साथ भी अच्छी तरह से काम करता है ।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. नेवला में ObjectId को ठीक से कैसे डालें?

  2. क्या नेवला मोंगोडब `findAndModify` पद्धति का समर्थन करता है?

  3. उबंटू पर MongoDB एक सेवा के रूप में शुरू नहीं होगा, लॉग में कुछ भी नहीं

  4. MongoDB 'गिनती ()' बहुत धीमी है। हम इसके साथ कैसे परिशोधित/काम करते हैं?

  5. मोंगोडब में अनसेट के बाद मूल्य शून्य के साथ दायर सरणी को कैसे हटाएं?