我如何在颤振中获得 Firestore 集合和子集合
Posted
技术标签:
【中文标题】我如何在颤振中获得 Firestore 集合和子集合【英文标题】:how can i get firestore collection and subcollection in flutter 【发布时间】:2020-12-25 04:57:58 【问题描述】:感谢您阅读我的问题。 在我问你问题之前,我的英语可能还不够好。
这是我的 Firestore 结构
我正在使用颤振,我必须从 FireStore 中将产品集合和子集合图像放在一起。
我成功获取数据,但我不知道如何将其用作流构建器。
FirebaseFirestore.instance
.collection("products")
.get()
.then((value) async =>
for (DocumentSnapshot document in value.docs)
log(document.data().toString()),
await document.reference
.collection("images")
.get()
.then((value) =>
for (DocumentSnapshot document
in value.docs)
log(document.data().toString()),
),
);
代码运行日志结果
我找了三天,但找不到答案。 请回复。
祝你有美好的一天。谢谢。
【问题讨论】:
您可以在同一个集合中使用一组图像,而不是使用子集合。当应用程序扩展时,它将降低成本。 我发现这样做的唯一方法是使用 2 个不同的流构建器,以不同的方式命名每个快照。将一个用于产品集合,然后将图像用于另一个。我建议在您的产品文档中添加一个“图像”字段,并使其成为字符串类型的数组。这将允许您直接从每个产品文档中引用图像。阿蒙,你比我快 2 分钟。 哇,感谢 Amon 和 Scott 的精彩回答。 @ScottGodfrey 考虑用你的评论信息写一个答案,因为其他人可以从这些信息中受益。 【参考方案1】:我发现这样做的唯一方法是使用 2 个不同的流构建器,以不同的方式命名每个快照。将一个用于产品集合,然后将图像用于另一个。我建议在您的产品文档中添加一个“图像”字段,并使其成为字符串类型的数组。这将允许您直接引用每个产品文档中的图像
【讨论】:
以上是关于我如何在颤振中获得 Firestore 集合和子集合的主要内容,如果未能解决你的问题,请参考以下文章
如何将集合和子集合一起从 firestore 导出到 excel 或 bigquery 表?