代码之家  ›  专栏  ›  技术社区  ›  epeleg

如何使用google的firestore建立多对多关系模型

  •  1
  • epeleg  · 技术社区  · 8 年前

    我一直在看关于 Cloud firestore Data Model 关于 Security in Cloud firestore 但无法找到如何对我的数据建模的答案。

    我有组和用户,我想实现一种成员关系,这样每个用户都可以是多个组中的成员,而且每个组显然可以有多个成员。

    我希望能够有效地辨别每个组的成员以及给定用户所属的组。

    在关系数据库中,我会有3个表,用户、组和user\u组或group\u membr,我猜任何读过这个Q的人都可以知道如何处理这个问题。

    我应该使用哪些集合/文档/子集合来使用firestore实现相同的功能?

    我特别关心的是安全设置,它允许用户从组中删除自己(并且只允许自己),并允许组所有者/经理将任何用户添加到他管理的组(并且只添加到该组)

    是否可以/应该仅使用用户和组的集合来实现这一点,并且Memebrisp是这些集合上文档数据的一部分?或者应该使用额外的memeber ship集合?

    1 回复  |  直到 8 年前
        1
  •  1
  •   Frank van Puffelen    8 年前

    我最初的想法是,这样做与我推荐的方式非常相似 modeling many-to-many relationship on the Firebase Realtime Database 。关系体验的最大区别在于,您通常会在两个方向上存储关系。所以除了 user_groups 你还可以 group_users 每个实体对总共有四个集合。