Pyrebase更新字段消失了其他字段

时间:2017-12-14 13:24:52

标签: python firebase firebase-realtime-database

我正在使用Pyrabase(python wrapper for the Firebase API)。我正在尝试更新一个孩子只有一个像下面这样的字段,当我运行下面的代码它消失了,"另一个字段"你们有没有想过如何在不触及的情况下使用#34; anotherField"?的

我的firebase db就像:

{
   "weather":{
      "Los Angeles":{
         "anotherField":"something",
         "isSunny":false
      },
      "istanbul":{
         "anotherField":"something",
         "isSunny":false
      }
   }
}

我正在尝试使用以下数据进行更新:

dict = {
   "Los Angeles":{
      "isSunny":true
   },
   "istanbul":{
      "isSunny":true
   }
}

db.child("weather").update(dict)

1 个答案:

答案 0 :(得分:0)

在Firebase数据库上调用更新只能向下一级。它基本上循环遍历字典的第一级,并在其下的每个键上执行一组。

如果要有选择地替换较低级别的属性,则需要将每个属性的路径放入字典的顶级:

dict = {
   "Los Angeles/isSunnry": true,
   "istanbul/isSunny": true
}

db.child("weather").update(dict)