当前位置: 首页 > 知识库问答 >
问题:

Firebase,颤振读取,检索过滤数据

聂翼
2023-03-14

我的Firebase Firestore数据结构如下所示

/users/user1/data/userinfo (String name: Jack, String surname: Johnson)
/users/user2/data/userinfo (String name: Tom, String surname: Ronson)
/users/user3/data/userinfo (String name: Jack, String surname: Dalton)
/users/user4/data/userinfo (String name: Bob, String surname: Smith)

括号中是各自userinfo文档的内容

我想从/users/集合中检索所有的userinfo文档,其中name==Jack,所以我应该检索/users/user1/data/userinfo(名称:Jack,姓氏:Johnson)/users/user3/data/userinfo(名称:Jack,姓氏:Dalton)。有人可以帮助我如何在Flutter中做到这一点,而无需检索整个/用户/集合,并在本地过滤设备上的数据。

谢谢:)

共有1个答案

邢博文
2023-03-14

这只需要对集合进行简单的查询。

final documents = await usersCollection.where("name", isEqualTo: "Jack").getDocuments();

documents.forEach((doc) => print(doc.data));
 类似资料:
  • 我正在尝试从cloud Firestore的Flutter中的以下路径获取数据,我有以下结构 followers/{currentuser}/userfollower/{user_id} 用户/user_id/user_details 我正在尝试获取当前用户的所有关注者的详细信息。有人能帮忙吗? 我能得到第一部分是因为 我不知道如何循环通过所有id从用户集合中获取数据。我尝试了以下代码,但没有成功

  • 也许这是一个新手问题,但我正在学习颤振和一些东西,如异步、等待、未来,还不适合我的想法。无论如何,我要做的是从“field.documents[index][“name”]”中获取值,并构建一个列表。这是我的代码: 我想让productName在foreach之外。当我打印时,它首先打印null。我也会发布我的整个函数: 谁能帮帮我吗?我知道它与异步编程有关,但我正在学习。谢谢

  • 收到评论后,我已将以下代码部署到我的Firebase项目中,并已成功部署!。但没有向我发送任何通知。请在此处查看我的Firebase实时数据库截图以更好地理解。 [现已解决:它将只向一个ID(即我的管理设备)发送通知] 工作代码: 有关更多详细信息,请参阅此视频链接 注意:如果您的应用程序已打开并最小化,则会显示通知,但如果应用程序已打开且您正在使用,或者如果应用程序已终止,则强制关闭,则不会工作

  • 我有同样的问题,搜索了很多。但找不到确切的解决方案。 但我通过启用“Android设备验证”API来解决这个问题 步骤:1:进入谷歌API控制台中的库页面。 2:搜索并选择Android设备验证API。此时会出现Android设备验证API仪表板屏幕。 3:如果API尚未启用,请单击启用。 4: 如果出现“创建凭据”按钮,请单击它以生成API密钥。否则,单击“所有API凭据”下拉列表,然后选择与启

  • 主要内容:限制第一个和最后一个,其他过滤器Firebase提供了多种方式来过滤数据。 限制第一个和最后一个 下面我们来了解第一个和最后一个数据限制是什么。 方法返回从第一个开始向前的指定数量的项目。 方法返回从最后一个开始向前的指定数量的项目。 下面这个例子是展示如何工作的。 由于在数据库中只有三个运动员数据,这里将限制查询返回一个运动员数据。 示例 现在,参考下面的例子 - 控制台会记录第一个查询得到前两个运动员数据,第二个查询得到最后

  • Flutter Android Firebase认证错误,虽然应用程序没有失败,但认证通过了,但终端出错 [错误:flatter/lib/ui/ui\u dart\u state.cc(148)]未处理的异常:NoSuchMethodError:对null调用了getter“uid”。 错误似乎来自这一行代码