首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Firebase/Firestore :如何将"Auth“用户添加到”组织“集合?

Firebase/Firestore :如何将"Auth“用户添加到”组织“集合?
EN

Stack Overflow用户
提问于 2021-11-20 07:57:14
回答 1查看 58关注 0票数 1

我有一个Firestore结构,它有一个"organizations“集合和一个"users”集合。

当用户通过Auth创建帐户时,我想创建一个新的“组织”,并将他添加到此组织中。这意味着拥有“创建”权限。

问题是,通过这样做,用户可以创建多个组织并加入其中。

我面临的另一个问题是关于变化。当该用户更改他们的信息(姓名、电子邮件等)时,它也会更新他们在"users“集合中的行,但这也意味着他们将能够更改”组织“引用并将其指向另一个组织,这是不好的。

因此,我想知道这样做的正确方法是什么,以及/或者我是否做错了。

EN

Stack Overflow用户

发布于 2021-11-20 11:02:12

这种技术被称为denormalization,当涉及到顶级NoSQL数据库时,这是一种常见的做法。

我从您的问题中了解到,您希望将用户添加到组织中。在这种情况下,不需要复制数据。我将使用如下所示的结构:

代码语言:javascript
复制
Firestore-root
  |
  ---- users (collection)
  |     |
  |     --- $uid (document)
  |          |
  |          --- organizations: [$orgId, $orgId, $orgId] (array)
  |
  ---- organizations (collection)
        |
        --- $orgId (document)
             |
             --- users: [$uid, $uid, $uid] (array)

其中" organizations“是保存组织is的数组,"users”是保存用户is的数组。

因为我们通常是根据我们想要执行的查询来构造Firestore数据库,所以上面的模式将帮助您查询用户所属的所有组织或组织中的所有用户。这意味着如果您想要显示用户数据,您必须执行一个新的Firestore数据库调用。

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

https://stackoverflow.com/questions/70044163

复制
相关文章

相似问题

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