javascript - क्लाउड फायरस्टार दस्तावेज़ में सबकोलेक्शन कैसे सूचीबद्ध करें




firebase google-cloud-firestore (2)

कहो कि मेरे पास क्लाउड फायरस्टार में संग्रहीत यह न्यूनतम डेटाबेस है। मैं subCollection1 और subCollection2 के नाम कैसे प्राप्त कर सकता हूं?

rootCollection {
    aDocument: {
        someField: { value: 1 },
        anotherField: { value: 2 }
        subCollection1: ...,
        subCollection2: ...,
    }
}

मुझे उम्मीद है कि मैं सिर्फ aDocument के आईडी को पढ़ने में सक्षम हो सकता aDocument , लेकिन aDocument पर केवल फ़ील्ड दिखाता है।

rootRef.doc('aDocument').get()
  .then(doc =>

    // only logs [ "someField", "anotherField" ], no collections
    console.log( Object.keys(doc.data()) )
  )

Node.js में आप 'ListCollectionIds' विधि के बाद होंगे

var firestore = require('firestore.v1beta1');

var client = firestore.v1beta1({
  // optional auth parameters.
});

// Iterate over all elements.
var formattedParent = client.anyPathPath("[PROJECT]", "[DATABASE]", "[DOCUMENT]", "[ANY_PATH]");

client.listCollectionIds({parent: formattedParent}).then(function(responses) {
    var resources = responses[0];
    for (var i = 0; i < resources.length; ++i) {
        // doThingsWith(resources[i])
    }
})
.catch(function(err) {
    console.error(err);
});

यह वर्तमान में क्लाइंट एसडीके (वेब, आईओएस, एंड्रॉइड) में समर्थित नहीं है।


ऐसा लगता है कि उन्होंने Node.js को getCollections() नामक एक विधि जोड़ दी है:

firestore.doc(`/myCollection/myDocument`).getCollections().then(collections => {
  for (let collection of collections) {
    console.log(`Found collection with id: ${collection.id}`);
  }
});

यह उदाहरण दस्तावेज़ के सभी /myCollection/myDocument






google-cloud-firestore