查询需要索引。您可以在此处创建它:{链接已断开}

时间:2018-11-20 20:38:32

标签: swift google-cloud-firestore firebase-console

我要查询我的“ GroupConvos”集合,在该集合中,所有文档都有一个memberIds字符串数组,该数组带有有关属于该组的成员的ID,然后对GroupConvos进行以下查询链接断开

self.db.collection(kGroupConvos)
       .order(by: kUpdatedAt, descending: true)
       .whereField("memberIds", arrayContains: self.currentUserId)
       .limit(to: 20)
       .getDocuments { [weak self] snapshot, error in
            if let error = error {
               print(error) 
            } else { ... }
  

查询需要一个索引。您可以在这里创建它:{link}

图片:

enter image description here

所以我进入控制台并创建了一个索引:

enter image description here

当我执行查询时,我一直收到相同的错误。有什么建议在这里做什么?

2 个答案:

答案 0 :(得分:1)

如果您使用数组包含来搜索字段,则似乎需要向其添加数组包含类型索引:

enter image description here

请注意,您可以为此选择。看来您要做的是使memberIds成为升序类型字段索引。

答案 1 :(得分:0)

对于任何感兴趣的人,防止该查询出现索引错误的正确索引是:

arrayField:arrayContains updatedAt:降序