如何从一个集合中的另一个集合的文档ID列表中获取多个文档

时间:2020-10-29 13:58:00

标签: firebase flutter google-cloud-firestore

我有2个收藏集。我可以从第一个集合中获取ID列表,但无法使用这些ID从第二个集合中检索具有这些ID的文档

  Stream<QuerySnapshot> getSharedGroupsStreamSnapshot(
      BuildContext context) async* {
    final uid = await Provider.of(context).auth.getCurrentUID();
    yield* await FirebaseFirestore.instance
        .collection("sharedLists")
        .where('userID', isEqualTo: uid)
        .get()
        .then((value) {
      FirebaseFirestore.instance
          .collection("sharedLists")
          .where("accepted", isEqualTo: true)
          .get()
          .then((event) {
        event.docs.forEach((element) {
          gid.add(element['groupId']);
          FirebaseFirestore.instance
              .collection('groups')
              .where(FieldPath.documentId, whereIn: gid)
              .get()
              .then((snapshot) => {
                    grp = snapshot.docs
                        .map((document) => document.data())
                        .toList()
                  });
          print(grp);
        });
        //getStream(context);
      });
    });
  }

0 个答案:

没有答案