Как указано в документации , невозможно перечислить подколлекцию документа с помощью клиентских SDK (Android, iOS, Web).
С другой стороны, «getCollections()
метод серверных клиентских библиотек Cloud Firestore перечисляет все вложенные коллекции ссылки на документ».
Поскольку кажется, что вы используете Android SDK, вам нужно найти обходной путь. Одним из возможных путей решения этой проблемы является сохранение имен вложенных коллекций в выделенном поле в родительском документе. Например, вы можете использовать поле Array для хранения всех имен вложенной коллекции.
Обычно вы заполняете это поле при создании первого документа вложенной коллекции с помощью Android SDK.
В случае, если по какой-либо причине вы не можете сделать это с клиента, вы можете использовать облачную функцию, которая опирается на Admin SDK и, следовательно, может использовать метод getCollections()
, упомянутый выше.