【问题标题】:How can I track and update all branches of common data set in firebase database?如何跟踪和更新 firebase 数据库中公共数据集的所有分支?
【发布时间】:2017-04-28 01:19:19
【问题描述】:

考虑以下 Firebase 树,其中我有一个名为 users 的主节点,其中包含我使用的姓名、头像、电子邮件和其他用户资料,并在其他节点上得到回复。

我还有另一个名为games 的主节点。一个用户可以单独或与其他玩家一起玩许多游戏。

如果用户 er09gju34900jf23 决定更新其个人资料,我如何查看拥有此 id 的所有数据库并一次更新所有路径?

{
    users: {
        er09gju34900jf23: { // Authenticated User ID
            avatar: '',
            email: '',
            name: '',
            // other user profile data
        }
    },
    games: {
        er09gju34900jf23: { // Authenticated User ID
            a2w4053g9043if092: { // Game Random Generate Game ID (1)
                // other data
                players: {
                    er09gju34900jf23: {
                        avatar: '',
                        email: '',
                        name: '',
                        // other user profile data
                    },
                    // other players
                }
            },
            bewrpgkrthg96k059h: { // Game Random Generate Game ID (2)
                // other data
                players: {
                    er09gju34900jf23: {
                        avatar: '',
                        email: '',
                        name: '',
                        // other user profile data
                    },
                    // other players
                }
            }
        }
    }
}

对于这棵树,我怎样才能知道 er09gju34900jf23a2w4053g9043if092bewrpgkrthg96k059h 游戏中的玩家,然后更新它的数据,比如下面:

/users/er09gju34900jf23 = {avatar, email, name}
/games/er09gju34900jf23/a2w4053g9043if092/players/er09gju34900jf23  = {avatar, email, name}
/games/er09gju34900jf23/bewrpgkrthg96k059h/players/er09gju34900jf23  = {avatar, email, name}

【问题讨论】:

    标签: firebase firebase-realtime-database firebase-authentication


    【解决方案1】:

    我建议不要在每个游戏下复制每个用户的完整数据。相反,只需在每个游戏下复制他们的 UID,然后从他们的/users/$uid 节点查找每个用户的信息。

    我也推荐:

    【讨论】:

    • 谢谢弗兰克!由于其中两个链接,我决定采用我的问题中描述的结构。我将对这些建议进行第二次阅读。看完再评论。
    猜你喜欢
    • 2021-01-15
    • 1970-01-01
    • 2023-03-18
    • 2021-05-16
    • 2011-07-10
    • 2021-07-11
    • 1970-01-01
    • 1970-01-01
    • 2011-08-09
    相关资源
    最近更新 更多