Как мне создать составной индекс для моего запроса Firestore? - PullRequest
0 голосов
/ 22 сентября 2019

Я пытаюсь выполнить запрос к пожарному хранилищу для коллекции, что приводит к сбою, поскольку для запроса, который я пытаюсь создать, необходимо создать индекс.Ошибка содержит ссылку, которая должна автоматически создать отсутствующий индекс для меня.Однако, когда я перехожу по ссылке и пытаюсь создать подготовленный для меня индекс, я сталкиваюсь с ошибкой, в которой говорится: « name только индексы не поддерживаются».Я также хотел бы отметить, что я использую инфраструктуру функций npm для тестирования моей облачной функции, которая содержит соответствующий запрос.

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

Примеры документов в моей коллекции предметов:

    {
        descriptionLastModified: someTimestamp <a timestamp datatype>
        detectedLanguage: "en-us" <string>
    }
    {
        descriptionLastModified: someTimestamp <a timestamp datatype>
        detectedLanguage: "en-us" <string>
    }
    {
        descriptionLastModified: someTimestamp <a timestamp datatype>
        detectedLanguage: "fr" <string>
    }
    {
        descriptionLastModified:someTimestamp <a timestamp datatype>
        detectedLanguage: "en-us" <string>
    }

Это все запросы, которые я попытался выполнить, но они не выполнены:

    let queryRef = itemsRef.where('descriptionLastModified','<=', oneDayAgoTimestamp).orderBy("descriptionLastModified","desc").where("detectedLanguage", '==', "en-us").get()

    let queryRef = itemsRef.where('descriptionLastModified','<=', oneDayAgoTimestamp).where("detectedLanguage", '==', "en-us").get()

    let queryRef = itemsRef.where("detectedLanguage", '==', "en-us").where('descriptionLastModified','<=', oneDayAgoTimestamp).get()

Я сделалследующие составные индексы на уровне коллекции безрезультатны:

CollectionId: элементы Поля: descriptionLastModified: DESC детектированный язык: ASC

CollectionId: элементы Поля: descriptionLastModified: ASC детектированный язык: ASC

CollectionId: items Поля: foundLangauge: ASC descriptionLastModified: DESC

Я ожидаю, что смогу отфильтровать свои элементы по их полю timestamp descriptionLastModified и, кроме того, по значению обнаруженного поля строки Language.

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