gpt4 book ai didi

firebase - 仅当集合 1 中的数据与集合 2 中的数据匹配时才填充

转载 作者:IT王子 更新时间:2023-10-29 06:56:38 24 4
gpt4 key购买 nike

我有 2 个收藏。1st Collection 是这样设置的。

firestore: SeriesCollection
{
seriesName: "Test Name"
seriesStartDate:
seriesImage:
}

第二集

firestore: SeriesAudioFiles
{
series: "Test Name"
audioFiles:
speaker:
dateOfEvent:
}

这是我的代码

ExpandableContainer(
expanded: expandFlag,
child: ListView.builder(
itemCount: snapshots.length,
itemBuilder: (context, index) {
if (snapshots[index].data["series"] ==
snapshot[widget.index].data["seriesName"]) {
return ListTile(
leading: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Text(
snapshots[index].data["month"],
style: TextStyle(
color: Colors.black.withOpacity(.5),
fontSize: 15),
),
Text(
snapshots[index].data["day"],
style: TextStyle(
color: Colors.black.withOpacity(0.5),
fontSize: 30),
),
],
),
title: Text(snapshots[index].data["sermonTitle"]),
subtitle:
Text(snapshots[index].data["sermonReference"]),
trailing: Icon(Icons.arrow_forward_ios),
onTap: () => passData(snapshots[index]),
);
}
},
),)

我想做的是仅列出与两个集合中的系列名称匹配的 SeriesAudioFiles。

我的 firestore 数据可能设置有误,但我是新手。

我试过执行 IF contains ,但我似乎无法让它填充我实际需要的数据。

当我能够获得实际有效的数据时,它是通过循环多次提取项目的。

最佳答案

您可以轻松使用集合的.where()方法。
有了它,您可以构建一个只包含您需要的音频的列表:

audioListFromSerie = audioCollection.where((i) => i.series == serieList[iterationIndex].seriesName).toList();

关于firebase - 仅当集合 1 中的数据与集合 2 中的数据匹配时才填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56580751/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com