如何在Firebase身份验证和Firebase收集数据库之间进行连接?

时间:2020-05-30 17:34:26

标签: android firebase google-cloud-firestore firebase-authentication

所以我试图了解Firebase的工作原理。我将Firebase云用于数据库。我创建了这样的收藏夹:

'groups': {
     'some_group_name': { ... data ... }
     'other_group_name': { ... data ... }
}

每个用户在输入应用程序时也输入电子邮件和密码。在注册时,他选择了组名。例如,在注册时,他将设置用户名,密码和some_group_name。但是,如何在当前登录用户与其数据库中的组之间建立连接? Firebase身份验证保存的唯一数据是电子邮件和密码。

我是否需要像这样创建另一个集合users

"users": {
    "some_user_name": "some_group_name"
}

1 个答案:

答案 0 :(得分:1)

您需要将用户的组成员身份/关联存储在某个地方。如何执行此操作,取决于您的应用程序的确切要求。

如果用户只能是一个组的成员,则可以将其组存储为用户个人资料文档中的字段。通常,您会为此拥有一个顶级集合users,并为该用户下的每个用户创建一个文档,并以用户的UID作为文档ID(以便您可以轻松地按用户的UID查找用户个人资料)。

如果用户可以是多个组的成员,则可以将其存储在同一用户配置文件的数组字段中。在这种情况下,请使用arrayUnionarrayRemovemanipulate the array,以便可以轻松地query for array membership when needed

相关问题