Каков формат JSON для индекса отдельного поля пожарного хранилища в запросе группы сбора? - PullRequest
1 голос
/ 03 июня 2019

Теперь мы можем получить документы из группы коллекций, и это здорово. Для этого мне нужно создать индекс с помощью сообщения об ошибке на консоли Firebase. Как добавить этот новый индекс в файл firestore.indexes.json?

Пример документации :

let museums = db.collectionGroup('landmarks').where('type', '==', 'museum');
museums.get().then(function(querySnapshot) {
  querySnapshot.forEach(function(doc) {
    console.log(doc.id, ' => ', doc.data());
  });
});

1 Ответ

0 голосов
/ 03 июня 2019

На верхнем уровне вашего индексного файла добавьте новый элемент с именем fieldOverrides и заполните его следующим образом:

{
  "fieldOverrides": [
    {
      "collectionGroup": "landmarks",
      "fieldPath": "type",
      "indexes": [
        {
          "order": "ASCENDING",
          "queryScope": "COLLECTION"
        },
        {
          "order": "DESCENDING",
          "queryScope": "COLLECTION"
        },
        {
          "arrayConfig": "CONTAINS",
          "queryScope": "COLLECTION"
        },
        {
          "order": "ASCENDING",
          "queryScope": "COLLECTION_GROUP"
        }
      ]
    }
  ]
}

Это сохраняет все автоматическое индексирование по умолчанию для поля type в landmarks в области действия COLLECTION и позволяет также использовать type в области действия COLLECTION_GROUP.

...