【问题标题】:Firestore Structure for public/private fields公共/私有字段的 Firestore 结构
【发布时间】:2020-12-04 09:02:54
【问题描述】:

我正在寻求有关 Firestore 数据库结构的一些建议。我有一个具有 Firestore 数据库的应用程序,并允许单个用户(在一个 UID 下)为其家庭的每个成员创建一个配置文件(每个配置文件都是集合中的一个文档)。在每个文档中,都有家庭成员的个人详细信息(作为字段。例如,字段 1 = 名字,字段 2 = 姓氏,字段 3 = 电话号码等)。这很好用,但是我需要将另一个细节归因于每个配置文件中的每个字段。我需要能够为每个单独的字段设置一个私有或公共标志(例如:名字有公共标志,姓有私人标志,电话号码有私人标志等等..)。如果每个字段都可以在下面有嵌套字段(例如“私有”布尔字段),那就太好了,但这不是 Firestore 的工作方式。好像是Collection/Document/Collection/Document/等等……

如果我不需要私人/公共标志,我不会有问题。我的数据非常适合 Firestore 结构。

有人对我如何最好地实现这一结果有任何建议吗?

提前干杯和感谢...

Family Profiles current structure without flags

【问题讨论】:

  • 你不能简单地为每个字段添加一个额外的标志字段来标记它的公共/私有状态吗?
  • 这个问题需要更多的上下文,我建议你阅读这个链接中的信息 --> stackoverflow.com/help/how-to-ask

标签: google-cloud-firestore private


【解决方案1】:

看看 Firebase 的官方documentation。那里提供的信息将帮助您了解最适合在此服务上使用data structure 的解决方案。另一方面,对于您的问题,这取决于您的用例,如果您可以向我们提供更多关于为什么您的实现需要按照您的意愿进行的背景信息,将会很有用。

另外,由于您对如何管理数据隐私的担忧与此有关,请查看此document

希望这些信息对你有帮助

【讨论】:

    【解决方案2】:

    你可以使用上面的结构。使用这种结构,您可以在需要时分别获取私有数据和公共数据。但是我必须告诉你,如果你想在你的应用程序中只向其他用户显示名字,你可以使用查询来向用户显示什么。并且始终使用唯一的 id 来存储数据,而不是硬编码的名称,例如 JaneDoe 或 JoeDoe。否则,您将来可能会在从 Firestore 获取数据方面遇到一些问题。

    如果您有任何问题,请随时提出

    【讨论】:

    • 感谢 Rajab,非常感谢您的回复。我喜欢你的概念并想使用它,但我已经在考虑我的应用程序将如何处理它时感到震惊。喜欢: 1. 每个字段可以是私有的或公共的(在应用程序中设置)。 2. 在应用中显示个人资料时,应用如何知道从哪里(私人/公共)提取字段?我会假设每个字段周围都会有一个 if 语句,如果(从公共)返回 null 则命中私有存储桶。
    • 由于我不知道它是什么类型的应用程序,我无法很清楚地回答。但是我认为您的应用程序使用了跟随系统,如果A跟随B,则用户A只能查看用户B的私人数据。如果是这样,那么我建议您查看此答案stackoverflow.com/questions/46979375/…
    猜你喜欢
    • 2018-03-17
    • 1970-01-01
    • 1970-01-01
    • 2014-09-09
    • 2013-07-26
    • 2014-05-25
    • 2018-08-15
    • 2017-12-09
    • 1970-01-01
    相关资源
    最近更新 更多