我有一个名为“帖子”的收藏集。帖子包含名为“反馈”的子集合。
当用户向帖子提供反馈时,其ID和评论将添加到反馈子集合中。
现在,我想查找用户未提供反馈的帖子。
在先前的post中,我被告知无法通过Firebase完成此操作。因此,我尝试从客户端进行此操作。
List<String> postIds = [];
await Firestore.instance
.collection(APIPath.posts())
.getDocuments()
.then((postDocs) async {
postDocs.documents.forEach((doc) async {
print(doc.documentID);
var feedbackDocs = await Firestore.instance
.collection('posts')
.document(doc.documentID)
.collection('feedback')
.getDocuments();
var givenFeedback = false;
feedbackDocs.documents.forEach((feedbackDoc) async {
});
print(givenFeedback);
if (!givenFeedback) {
postIds.add(doc.documentID);
}
});
});
print(postIds);
我的想法是浏览所有帖子,并找到每个帖子的反馈。如果当前用户“ uid”给出了任何帖子,则丢弃该帖子。
但是由于某种原因,我没有将任何数据输入到阵列中。即使我没有对任何帖子提供任何反馈。
我添加了2条打印语句。
第一条语句打印13个文档ID。
现在这些邮政文件中都没有任何反馈。 所以我应该得到13个错误的输出。 但是我只会得到2个错误的输出。
我希望得到的是发布文档ID,然后输出错误 像这样;
91ew6yx3yWaWGme31FTB
fasle
Aqq5HctlLudFFvqN8prm
false
...
我得到的是; 我先得到13个文件ID 然后是2个错误的输出 像这样
91ew6yx3yWaWGme31FTB
Aqq5HctlLudFFvqN8prm
...
v39SkTkL8PwMOyPAE2QG
false
false
似乎部分代码没有运行... 有没有正确的方式来安排此代码?