首页 > 解决方案 > 如何根据颤动中的对象数组中的值更新firebase实时数据库?

问题描述

我是 Flutter 和 firebase 的新手,我的数据结构如下:

  {
      "a": {
        "b" : [ {
          "property1" : value1,
          "property2" : value2
           }, {
          "property1" : value3,
          "property2" : value4
          }]
       }
    }

Firebase 数据库已将我的数组对象编号为 0,1

如您所见, b 包含对象数组,如果我想更新包含 property2 值作为 value2 的对象中的值,如何创建查询?我必须修改我的数据库结构吗?

标签: firebaseflutterdartfirebase-realtime-database

解决方案


您将无法通过一次更新来做到这一点。你将不得不:

  1. 查询 a/b 的孩子,找到包含 value2 的孩子。该名称将是一个字符串,其中包含您找到的孩子的索引。
  2. 使用找到的孩子的名字,执行更新a/b/{child}

推荐阅读