【发布时间】:2019-06-15 07:31:50
【问题描述】:
我正在尝试找出在 Cloud Firestore 中存储图库的最佳方式。
每个文档都有自己的画廊。
Firestore 结构:
Collection
- Document
- Title
- Gallery
Flutter 应用程序如下所示:
屏幕 1: 列表 = [查看文档按钮]
屏幕 2(文档): [查看图库按钮]
屏幕 3: [查看外部图像按钮] [查看内部图像按钮]
屏幕 4:根据选择显示图像
这些是我目前的选择:
- 在每个文档的地图中存储图像 URL(使用此方法,图像在加载文档时立即可用。但我担心的是每个文档的大小,这会增加屏幕 1 的加载时间)
- 将图片 URL 存储在每个文档的子集合中(这会导致额外的查询以检索图库图片吗?)
- 将图像 URL 存储在“Galleries”集合中的另一个文档中,该集合然后包含对主文档的引用字段(我对此担心的是,Firestore 有两个查询,在查看图库时需要第二次加载时间)。
另外:删除 Firestore 存储 URL 的基本 URL 以减小文档大小是个好主意吗? (即,删除https://firebasestorage.googleapis.com/v0/b/test.appspot.com/(仅在文档字段中使用 URL 的剩余部分)并在调用时以编程方式插入)
哪种方法最有利?
【问题讨论】:
标签: firebase flutter dart google-cloud-firestore