【问题标题】:How to read/update values stored inside a map which is then inside of an array in Cloud Firestore?如何读取/更新存储在地图中的值,然后该地图位于 Cloud Firestore 中的数组中?
【发布时间】:2019-09-03 01:58:29
【问题描述】:

首先,我是 Firestore 和 Android 编程的新手。

我有一个存储文档的集合,每个文档包含一个学期数组,在学期数组中会有一个代表每个学期的地图数组。在各个学期地图中,将有一个标识学期的数字字段以及另一个名为 Student 的数组,其中将包含一个地图数组,其中每个地图将代表每个学生并存储三个不同的字段:学生 ID、DaysPresent、Total .

我正在尝试找到一种方法来读取由 ID 表示的每个学生的数据,同时考虑学期编号。

例如,如果用户选择第 1 学期,它将进入数组 Semester,然后从代表第 1 学期的第一个数组中加载值,然后它将显示代表每个学生的所有地图,其中存在天数,用户可以修改和读取总数。

一个关键的关键点是每个地图的总数总是相同的,这意味着每个学生。

【问题讨论】:

    标签: java android arrays object google-cloud-firestore


    【解决方案1】:

    编辑: 2020 年 3 月 26 日:

    其实可以使用下面文章中的解决方案:


    如果您打算在查询 Cloud Firestore 数据库时获得 List<Semester>List<Student>,请注意目前无法实现。即使这些对象的类型为SemesterStudent,您也无法将它们映射到学期/学生对象列表中。为了解决这个问题,您需要编写代码来迭代这些对象,以便将它们从List<Map> 转换为List<Semester>List<Student>。因此,您需要为此应用自己的逻辑。

    编辑:

    调用时返回的对象类型:

    document.getData();
    

    Map<String Object>,所以需要根据自己的逻辑遍历map,按需获取数据。

    【讨论】:

    • 您能详细说明一下这方面的编码吗?我是新手,急需有关此问题的帮助。
    猜你喜欢
    • 1970-01-01
    • 2022-01-08
    • 1970-01-01
    • 2021-05-28
    • 2020-11-08
    • 2020-03-02
    • 2019-10-23
    • 2021-01-23
    • 1970-01-01
    相关资源
    最近更新 更多