【发布时间】:2018-07-01 22:17:38
【问题描述】:
我在为 Firebase/Firestore 建模时经常遇到这种分岔路,也许您可以对此有所了解。
如果我有多个管理员可以以他们的名义为每个客户(100 多个)。管理员看不到其他管理员客户端(将它们视为单独的公司)。什么会更好?
1) 添加 Clients 根集合,并在其下添加一个 ID 为管理员电子邮件的文档,并在其下添加一个包含客户文档的子集合:
Firestore-root
|
--- Clients(collection)
|
--- Admin ID/Email(Collection)
|
----------Clients Info (documents)
2) 或者添加客户端根集合及其下的客户端文档,但每个文档中的一个属性将是管理员电子邮件:
Firestore-root
|
--- Clients(collection)
|
--- Clients Info (documents)
|
--- AdminId: (email)
如果您想在测试/甚至生产期间在控制台中查看数据,我发现第一个更容易查询,最重要的是更具可读性。但我发现第二个关卡的数量较少。
解决这个问题的正确方法是什么? 谢谢
【问题讨论】:
标签: java android firebase google-cloud-firestore