我正在阅读有关Cloud firestore Data Model的文档 和约Security in Cloud firestore但无法找到如何建模数据的答案。
我有群组和用户,我希望实现会员关系,这样每个用户都可以成为多个群组的成员,每个群组显然可以拥有多个成员。
我希望能够有效地分辨出每个群组的成员以及给定用户所属的群组。
在关系数据库中,我会有3个表,用户,组和user_groups或group_membrs,我猜测读这个Q的人可以告诉你如何处理这个问题。
我应该使用哪些集合/文档/子集合来使用firestore实现相同的功能?
我特别关注允许用户从群组中删除自己(并且只有他自己)的安全设置,并允许群组所有者/管理者将任何用户添加到他管理的群组中(并且仅限于该群组) )
是否/应该仅使用集合用于用户和组来实现这一点,其中memebrship是这些集合中文档数据的一部分?或者是否应该使用额外的船舶集合?
答案 0 :(得分:1)
我最初的做法是与我推荐modeling many-to-many relationship on the Firebase Realtime Database的方式完全相同。与您的关系体验最大的区别在于,您通常会将关系存储在两个方向。因此,除user_groups
之外,您还有group_users
,每个实体对共有四个集合。