【发布时间】:2019-11-06 01:43:09
【问题描述】:
我终于开始了解很多有关 FireStore 的信息,但我想知道是否可以得到一些帮助。
如果我有类似或类似的设置:
比赛
Android
名称:Android
尺寸:中等
统计数据
str: 10
性别:12....(更多值)
我将如何解析这个?我希望让特定的 TextView 应用在数据库中找到的值,这样我就可以简单地更新数据库,我的应用程序将填充这些值,这样将来硬编码和代码更新就不会那么麻烦了。
我目前使用这样的东西:
val androidRef = db.collection("races").document("Android")
androidRef.get().addOnSuccessListener { document ->
if (document != null) {
oneOfTheTextViews.text = document.getString("str")
} else {
}
问题是目前我似乎只能从集合(比赛)/文档(android)/然后是单个字段(我将“str”设置为单个字段,而不是地图或数组的一部分)
这样做的最佳做法是什么?我根本不应该嵌套它们吗?如果我可以引用所说的嵌套/映射/数组,需要调用哪些函数? (需要明确的是,我不仅要问是否有可能——参考指南和文档都提到了这一点——而是需要调用哪些属性/类/方法/等才能仅访问其中一个值或点到这些值之一?)。
第二个问题:有没有办法获取文档名称列表?如果我有几场比赛,并且只是想根据文档名称创建一个微调器或回收器视图作为集合的一部分,我可以将其读取到应用程序中吗?
【问题讨论】:
-
最好新建节点。将
stats与节点races分开 -
所以races是集合,Android是文档。您是在建议将统计信息作为自己的集合或文档?如果那样的话,每个文档可能只有 10~20 个字段(实际上是在更大的一端)。
-
我建议从比赛节点中获取统计数据。
-
我的第二个问题有答案了吗?将集合中的文档制作成数组以供微调器使用?
标签: arrays firebase dictionary kotlin google-cloud-firestore