Я пытаюсь получить все коллекции вместе с документом, я не знаю, как это сделать, я новичок в firestore.
Firebase.firestore()
.collection("reservations")
.doc(tripUid)
.get()
.then(doc => {
console.info(doc.doc.data());
}).catch(error => {
console.info("Error getting document:", error);
});
Я вижу только одну коллекцию под Ab8F ... 8AJC документом. Где вы говорите, что их больше одного?



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Таким образом, подколлекции по-прежнему следуют общей идее Firestore. В качестве примера предположим, что у вас есть коллекция под названием «Заказы» с подколлекцией «Продукты». Чтобы получить все документы о продуктах определенного Заказа, вы должны написать что-то вроде Firebase.firestore().collection("Orders/orderid123/Products").get(), где orderid123 — это идентификатор заказа, для которого вы хотите получить продукты.
Глядя на вашу модель данных, вы фактически назвали подколлекцию, которая выглядит как сгенерированный идентификатор. Таким образом, в приведенном выше примере вместо «Продукты» вы использовали бы «ymuIjdv...». Вы можете пересмотреть то, как вы называете эту подколлекцию, чтобы дать ей более удобочитаемое имя. Похоже, вы создаете идентификатор для документа подколлекции и также используете его в качестве имени подколлекции.
В вашей точной настройке то, о чем вы просите, может быть достигнуто путем выполнения Firebase.firestore().collection("reservations/" + tripUid + "/ymuIjdvwWnOr20XWVp6gwRKtmgD2").get(). Это позволит получить все документы подколлекции в резервировании с переменной tripUid и в коллекции 'ymuIjdvwWnOr20XWVp6gwRKtmgD2'.
Спасибо. ваше решение сработало. просто хотел спросить, как получить все заказы из firestore. целая коллекция, состоящая из подколлекций. пробовал firebase.firestore().collection("orders").get() но не работает.
Всем привет. Что будет с новой версией Firebase?
Это реализация Firebase Admin SDK.
Надеюсь, это поможет
firestore()
.collection("reservations")
.doc(tripUid)
.listCollections()
.then((subCollections) => {
subCollections.forEach((subCollection) => {
subCollection
.get()
.then((array) => {
array.docs.forEach((doc) => {
console.info(doc.data());
});
});
});
});
Не существует API для получения списка всех вложенных коллекций в клиентских SDK Cloud Firestore. См. stackoverflow.com/questions/46596532/…