#firebase #google-cloud-firestore
#firebase #google-облако-firestore
Вопрос:
Я новичок, и в моей базе данных firestore есть коллекция, в которой есть документы, и у каждого документа есть вложенная коллекция без каких-либо других полей. Я не могу найти способ получить доступ к идентификатору пустого документа и получить вложенную коллекцию, связанную с документом, с помощью SDK. Я мог бы сделать это на консоли, но у меня слишком много дел, и я пока не могу вносить изменения в свое приложение, поэтому мне нужно использовать SDK. Пожалуйста, предложите мне какой-нибудь способ получить к ним доступ, например, к консоли.
Комментарии:
1. Можете ли вы показать изображение вашей базы данных / консоли Firestore и указать, о каких именно документах и коллекциях вы говорите?
Ответ №1:
Если вы знаете, как CollectionReference
из вложенной коллекции, вы можете легко получить родительский DocumentReference
элемент со parent
свойством CollectionReference
. Из DocumentReference
вам просто нужно использовать id
свойство.
Вы не поделились подробностями о своей модели данных, поэтому сложно дать дополнительные рекомендации о том, как найти CollectionReference
. В ответе Марка представлены некоторые возможные подходы.
Ответ №2:
Итак, я использовал запрос группы коллекций ( collectionGroup
) для запроса документов в вложенных коллекциях (которые имеют одинаковые id
имена) и нашел идентификаторы родительского документа по parent
свойству. Огромное спасибо @mark carlton и @Renaud Tarnec за эти предложения.
Ответ №3:
ПРИМЕР 1. Если запросы к вложенным коллекциям запрашиваются в нескольких документах, вы можете использовать запрос группы коллекций, который запрашивает коллекции с одинаковыми именами независимо от их положения в иерархии. Таким образом, вам на самом деле не нужно знать идентификатор документа СЛУЧАЙ 2: используйте идентификатор документа, который вы запомните для такого случая, в отличие от UID для идентификатора. Это были ваши запросы, которые имеют для вас гораздо больше смысла