我如何使用golang中的特定键更新数据firebase?

时间:2017-07-11 04:31:17

标签: firebase go firebase-realtime-database

我使用golang和firego连接到Firebase。我想使用密钥Status将我的数据IDAgent: 7从ON更新为OFF。这是我的数据库结构

Image

假设:我不知道孩子的active_chat。如何在active_chat / -Koja8GuFplEN3kjbfPO中更新数据,其中IDAgent = 7

我试过这段代码

x := map[string]string{"Status": "OFF"}
ref.OrderBy("IDAgent").EqualTo("7").Update(x)

但这段代码查询错误。

1 个答案:

答案 0 :(得分:0)

根据Firebase doc使用firego客户端库,您可以通过两种方式执行此操作。根据firego README.md起草的答案。

注意:您还没有提供完整的结构路径,我已根据截图选择了答案。因此,相应地更新您的JSON路径。

方法1:

f := firego.New("https://my-firebase-app.firebaseIO.com/active-chat/Koja8GuFpIEN3kjbfPO.json", nil)

x := map[string]string{
   "Status": "OFF",
}
if err := f.Update(x); err != nil {
  log.Fatal(err)
}

方法2:

f := firego.New("https://my-firebase-app.firebaseIO.com", nil)
f = f.Ref("/active-chat/Koja8GuFpIEN3kjbfPO.json")

x := map[string]string{
   "Status": "OFF",
}
if err := f.Update(x); err != nil {
  log.Fatal(err)
}