如何在flutter中使用where和orderBy。
任何人都可以告诉我这些索引是如何工作的以及如何正确创建它们。
Query query = Firestore.instance
.collection('clients')
.where('sequenceStatus', isEqualTo: sequenceName)
.orderBy('created', descending: true)
.limit(20);
W/Firestore(19854): (19.0.0) [Firestore]: 侦听查询(其中sequenceStatus == 引用 order by -created 的客户端,-name) 失败:Status{code=FAILED_PRECONDITION, description=查询需要索引。您可以在这里创建它:https://console.firebase.google.com/project/rigatoinfissitest/database/firestore/indexes?create_composite=ClFwcm9qZWN0cy9yaWdhdG9pbmZpc3NpdGVzdC9kYXRhYmFzZXMvKGRlZmF1bHQpL2NvbGxlY3Rpb25Hcm91cHMvY2xpZW 50cy9pbmRleGVzL18QARoSCg5zZXF1ZW5jZVN0YXR1cxABGgsKB2NyZWF0ZWQQAhoMCghfX25hbWVfXxAC,原因=空}
请按照以下 5 个步骤操作,或者在重定向到您在问题中发布的上述链接后从第 3 步开始。
转到您的 Firebase 控制台数据库
从那里选择索引。单击添加索引。
Enter clients
(集合名称)在集合 ID 字段中。
Add sequenceStatus
(where 子句字段)位于第一个字段中,并保持升序不变。
Add created
(orderby 字段)第二个字段并保持升序不变。
单击创建索引。
现在,运行您的查询。它会工作得很好。
Cheers!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)