Cloud Firestore - динамические запросы - PullRequest
0 голосов
/ 05 мая 2018

У меня есть Collection в Cloud Firestore, в котором есть определенное количество предметов, назовем его Collection "X". Это количество предметов будет постоянно меняться. В любой момент времени я хочу прослушать количество элементов в этом Collection и создать несколько whereEqualto() вызовов для объекта Query, основанного на другой «Коллекции», назовем его «Y»:

Query queryStore = FirebaseFirestore.getInstance()
            .collection("Y")
            .whereEqualTo(USER_ID_LABEL,  "item 1 from X")
            .whereEqualTo(USER_ID_LABEL,  "item 2 from X")
            .whereEqualTo(USER_ID_LABEL,  "item 3 from X");
            //Could be more than 3, could be less than 3, constantly changing

По существу, число whereEqualTo() будет динамическим.

Возможен ли этот тип запроса?

1 Ответ

0 голосов
/ 05 мая 2018

Да. whereEqualTo () возвращает объект Query , который можно использовать для создания нужного вам окончательного запроса. Как вы продемонстрировали в своем вопросе, нет необходимости объединять все методы одновременно. То, что вы написали, эквивалентно этому:

Query queryStore = FirebaseFirestore.getInstance().collection("Y")
queryStore = queryStore.whereEqualTo(USER_ID_LABEL,  "item 1 from X");
queryStore = queryStore.whereEqualTo(USER_ID_LABEL,  "item 2 from X");
queryStore = queryStore.whereEqualTo(USER_ID_LABEL,  "item 3 from X");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...