Скажем, у меня есть некоторые данные следующим образом:
{
"name": "post #1",
"votes": 100
},
{
"name": "post #2",
"votes": 10000
},
{
"name": "post #3",
"votes": 750
}
И так далее.
Данные в firebase не упорядочены по голосам, очевидно, они упорядочиваются по ключу.
Я хотел бы иметь возможность разбивать эти данные на количество голосов в порядке убывания.
Думаю, мне нужно было сделать что-то вроде:
ref.orderByChild('votes')
.startAt(someValue)
.limitToFirst(someOtherValue)
.once('value', function(snapshot) {
resolve(snapshot);
});
Или, может быть, мне нужно будет использовать limitToLast
и endAt
?
Разбиение страницы на key
довольно просто, но это меня бросает.
Обновление (2017-10-16): Firebase недавно объявила Firestore - их полностью управляемый NoSQL который должен облегчить выполнение более сложных запросов. Там могут быть некоторые варианты использования, где можно использовать базу данных Realtime, которую они всегда предоставляли. Если вы один из тех людей, этот вопрос все равно должен применяться.