orderByChild и дочерний элемент имеет определенное значение - PullRequest
0 голосов
/ 11 февраля 2019

Как я могу реализовать рейтинг, где пользователь может увидеть десятку лучших для девочек или для мальчиков?Я знаю, как создать рейтинг, в котором вы можете увидеть первую десятку всех пользователей, но я не знаю, как создать рейтинг, где отображаются только девочки или мальчики.(Я знаю, что я мог бы изменить узел пользователей, но это невозможно, потому что тогда я не мог сделать ранжирование всех пользователей)

Мой узел пользователей выглядит следующим образом:

 users
   /$userId
       /points      
       /sex

1 Ответ

0 голосов
/ 11 февраля 2019

Как объяснено в документации"вы можете использовать только один метод order-by за раз. Вызов метода order-by несколько раз в одном запросе приводит к ошибке".

Наиболее распространенный подход для устранения этого «ограничения» - дублирование ваших данных, что довольно часто встречается в мире NoSQL.

В таком случае у вас будет следующая модель данных:

users
   /$userId
       /points      
       /sex
femaleUsers
   /$userId
       /points      
maleUsers
   /$userId
       /points 

Вы будете использовать метод update() для синхронизации различных узлов.

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