Запрос на документ в подколлекции FireStore - PullRequest
0 голосов
/ 20 октября 2019

У меня есть следующая структура моей базы данных:

enter image description here

Внутри коллекции Location есть документ, и в нем есть координаты Lat, Lon:

enter image description here

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

Есть ли какой-нибудь запрос, который я могу сделать, чтобы перейти прямо внутрь к чему-то вроде WhereEqualTo("Lat")?

Для начала я попробовал следующее:

    db.collection("Users").get()
            .addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
                @Override
                public void onComplete(@NonNull Task<QuerySnapshot> task) {
                    if (task.isSuccessful()) {

                        List<String> listID = new ArrayList<>();
                        for (QueryDocumentSnapshot doc : task.getResult()) {

                            listID.add( doc.getId() );
                        }

Однако он возвращает мне нулевой список.

Спасибо

1 Ответ

1 голос
/ 20 октября 2019

Вам необходимо использовать Запрос группы коллекций , как указано ниже:

db.collectionGroup("Location").get()
        .addOnSuccessListener(new OnSuccessListener<QuerySnapshot>() {
            @Override
            public void onSuccess(QuerySnapshot queryDocumentSnapshots) {
                // ...
            }
        });

Это запускает запрос по всем именам коллекций Location в вашей базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...