Пожарная касса OrderBy и где конфликт - PullRequest
0 голосов
/ 15 июня 2019

У меня есть простые данные выборки из моей базы данных Firestore, но я хотел бы разбить их на страницы с некоторыми порядковыми номерами и условиями.Поэтому я пытаюсь получить данные с некоторыми базовыми фильтрами, но сталкиваюсь с ошибкой, в документах https://firebase.google.com/docs/firestore/query-data/order-limit-data описано, что только для диапазона <, <=,>,> = следует использовать orderBy и где для того же поля, но мне нужнотолько полное совпадение (==)

узел v8.12.0, экспресс, функции firebase

 model.collection
        .orderBy("dateCreated", 'desc')//timeStamp
        .where('tenantId', '==', 'f8XnOVUKob5jZ29oM9u9')  
        .limit(10)
        .get()
        .then((snapshot) => {
          res.send(snapshot);
        }).catch((error) => res.send(error));

получена следующая ошибка

{
    "code": "failed-precondition",
    "name": "FirebaseError"
}

у меня есть результаты только при использовании гдеили заказать отдельно, но не одновременно

1 Ответ

1 голос
/ 16 июня 2019

При работе с составными запросами необходимо создать индекс для ваших запросов .Ваш запрос не выполнен, потому что вы не создали индексы для

dateCreated
tenantId

На вкладке индекса должно быть что-то похожее на следующее с вашими индексированными полями.

index

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