首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不“知道”父级的情况下更新Firebase的子级?

如何在不“知道”父级的情况下更新Firebase的子级?
EN

Stack Overflow用户
提问于 2017-02-16 15:31:07
回答 1查看 342关注 0票数 0

假设我在Firebase数据库中有以下数据。需要这些数据才能快速查看特定游戏中的两个玩家。

现在,我想用一个查询更新John Doe (user-ID = UID-1)的名称。理想情况下,有一种方法可以做到这一点。很明显这是伪代码...:-)

Firebase.ref('/game-players/*/UID-1').update("John with a different Doe")

代码语言:javascript
复制
"game-players" : {
  "game-1" : {
    "UID-1" : "John Doe",
    "UID-2" : "Donald Trump"
  },
  "game-2" : {
    "UID-1" : "John Doe",
    "UID-3" : "Barrack Obama"
  }
}

这可以通过首先检查玩家参与的所有游戏来解决(因为这些数据也可以从树的不同分支获得),但我不喜欢必须基于这些数据生成许多不同查询的想法。

有什么想法可以把我带到正确的方向吗?

EN

回答 1

Stack Overflow用户

发布于 2017-02-16 16:02:03

你应该改变你的数据结构。

代码语言:javascript
复制
players:
|--uidxx
|---- name
|---- surname
|---- ...
|--uidx2
|---- name
|---- surname
|---- ...

game-players :
|-- game-1 : 
|----   uidxx : true,
|----   uidx2 : true,

players节点中,您将所有球员与数据(例如姓名)放在一起。

gameplayers节点中,您只使用播放器的uid,而不使用数据。

通过这种方式,您只需更新“玩家”节点中的数据,而无需查询所有游戏。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42267558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档