我正在构建 Flutter 应用。图片中提供了Cloud Firestore数据库结构。我想使用 StreamBuilder
获得所有用户的所有帖子。我怎样才能做到这一点?到目前为止,我已经尝试过:
Stream<List<PostModel>> jobs() {
return usersCollection.snapshots().map((snapshot) {
return snapshot.documents.map((doc) {
doc['posts'].map((docu) {
return PostModel.fromSnapshot(docu);
});
}).toList();
});
}
答案 0 :(得分:3)
如果要在所有称为“帖子”的子集中的所有文档中使用(对于所有用户),那么您可能希望使用collection group query使用collectionGroup():
db.collectionGroup("posts").snapshots()...
这将为您提供任何称为“帖子”的集合或子集合中的所有文档,无论其嵌套在何处。