Firestore复合索引无法正常工作:查询需要索引

时间:2019-05-06 00:57:41

标签: firebase google-cloud-firestore

UserCollection/{id}/PlayerCollection/{id}

上一个文档中有许多字段

active: true or false 
dateInMillies : 123456789




return _firestore
        .collection('UserCollection')
        .document(userID)
        .collection("PlayerCollection")
        .orderBy('dateInMillis', descending: true)
        .where('active', isEqualTo: true)
        .snapshots();

此代码块通过异常:

failed: Status{code=FAILED_PRECONDITION, description=The query requires an index. You can create it here: link to fix it 

但是链接已断开,所以我必须手动执行!

所以,我进入了“索引”标签,并创建了一个新的复合索引

collectionID : PlayerCollection
Fields Indexed: dateInMillis : Descending , active : Ascending

但是也没用!

2 个答案:

答案 0 :(得分:3)

我有一个替代答案。

请确保在打开链接时确保结尾处不包含任何随机字符。我从vscode的终端打开了链接,实际上它有三个可以打开的链接,但是其中两个带有尾部逗号,这在Firebase控制台中打开了白屏。

答案 1 :(得分:0)

问题已解决D:

我与Firebase支持人员联系了有关URL损坏的问题,这是解决方案:

  

似乎您的浏览器上可能链接了另一个帐户。   可能是gmail,如果是这种情况,请验证您当前的   会话与所选项目相对应,或者直接尝试注销/   使用拥有该项目的帐户登录。您也可以从   隐身窗口

生成的链接解决了我的问题。