构建firebase数据库,依赖于两个变量

时间:2017-02-27 18:35:57

标签: firebase firebase-realtime-database structure relationship nosql

我在构建数据库时遇到了一些麻烦。 目前,我的用户和组的结构如下:

-groups
    -groupId
         -groupname: "...."
         -users
              -userId: true


-users
  -userId
       -username: "..."
       -groups
            -groupId: true

现在我想添加依赖于组和用户的变量。我尝试制作另一个名为groupUser的树,其中包含groupIduserId,但很难通过Firebase查询两个条件。那么构建数据库的最佳方法是什么?

提前致谢!

1 个答案:

答案 0 :(得分:0)

我会像这样构建你的数据:

{
    groups: {
        groupIdOne: {
            groupname: "...",
            users: {
                userIdOne: true
            }
        }
    },
    users: {
        userIdOne: {
            username: "...",
            groups: {
                groupIdOne: true
            }
        }
    },
    groupUsers: {
        groupIdOne: {
            userIdOne: {
                //data for group users
            }
        }
    },
    //and/or
    userGroups: {
        userIdOne: {
            groupIdOne: {
                //data for user groups, same as above   
            }
        }
    }
}

这样,如果你有一个组ID和一个用户ID,你就可以直接通过.child('groupUsers').child(groupId).child(userId)

这样的方式查询该节点