为了在 Kotlin 中开发 Android 应用程序,我试图找到一种方法来根据某个索引从 Firestore 集合中检索文档,但我不知道如何去做。例如,如果我的集合有 50 个文档,那么检索第 10 个文档以便我可以根据该文档的字段值在我的应用程序上填充文本视图的最佳方法是什么?
感谢您抽出时间回答我的问题。
当您使用CollectionReference#add()方法将文档添加到 Firestore 时,您将看到为每个文档自动分配的随机文档 ID。如果您检查 Firebase 控制台或尝试以编程方式查询集合,您将找不到包含文档的任何顺序。这意味着不涉及索引。所以说,嘿 Firestore,给我第 10 个文档是不正确的,因为当你查询 50 个文档的集合时,第 10 个文档可能是你感兴趣的,但是如果你添加/删除文档,第 10 个文档获胜不一样。
您可能会想,好吧,我可以提供我自己的文档 ID,从 0 到 49,当我查询集合时,我可以按文档 ID 对它们进行排序。但是,这不是一个选项,因为文档 ID 始终是字符串,并且当您对字符串进行排序时,顺序是lexicographical。
我能想到的最佳解决方案是,如果您需要从集合中获取特定文档,则是在该文档中添加特定字段,以便可以非常轻松地识别它。例如,您可以为每个文档添加一个特定的名称或 ID,然后您可以执行如下所示的查询:
rootRef.collection("users").whereEqualTo("name", "Bhavey")
通过这种方式,您可以简单地识别集合中的每个文档。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句