Firestore / Angularfire получают коллекцию документов и их коллекцию. - PullRequest
0 голосов
/ 02 июля 2019

Есть ли способ с Firebase или Angularfire2 получить все документы в коллекции, , а также , одну или все непосредственные подколлекции.

Например, если у меня естьколлекция категорий, где у каждой категории есть имя, а также подколлекция подкатегорий, есть ли способ получить все категории с их коллекцией подкатегорий?

В моей голове я бы хотел что-то сделатькак это: afs.collection("categories").withSubcollection("subcategories");

Другая идея, о которой я думал, сработала бы, но не возможна, заключалась бы в использовании подстановочного знака в пути следующим образом: afs.collection("categories/{categoryId}/subcategories");

IЯ знаю, что ничего из этого не возможно, просто хотел посмотреть, есть ли способ сделать то, что я показываю.

В данный момент я храню подкатегории в массиве документа категории, но документы имеют максимумразмер, теоретически может иметь неограниченное количество подкатегорий.

1 Ответ

1 голос
/ 02 июля 2019

Операции чтения в Firestore всегда поверхностны и возвращают документ (ы) только из одной коллекции.Для чтения документов из нескольких коллекций вам потребуется несколько операций чтения.

Единственным исключением является случай, когда коллекции, которые вы хотите запросить, имеют одинаковые имена, и в этом случае вы можете использовать запрос группы коллекций .


Я искренне сомневаюсь, стоит ли хранить категории в подколлекции.Максимальный размер документа - 1 МБ.Я бы настоятельно рекомендовал указать, сколько категорий вы можете хранить в нем, и является ли это разумным ограничением для вашего приложения.

...