gpt4 book ai didi

android - 如何查询到 Firestore 子文档

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

我正在开发一个应用程序,我想查询 Firestore 子文档。让我进一步解释。

  1. 我有一个存放汽车的文件集合,每个文件都有一辆特定的汽车和描述。
  2. 在上面的每个文档中,我都有一个名为 user_data 的子集合,它有自己的文档,其中存储了将汽车添加到他的愿望 list 的用户的特定用户 ID。

现在我想获取 cars 的文档,前提是 userid 存在于它的子集合中。简而言之,我想获得特定用户的心愿单。我将 streambuilder 与 listviewbuilder 结合使用,但问题是我该如何执行此查询?

或者有更简单的方法吗?

最佳答案

Firestore 中的查询很浅,这意味着它们仅从运行查询的集合中获取项目。无法在单个查询中从顶级集合和其他集合或子集合中获取文档。 Firestore 不支持一步跨不同集合的查询。因此,您无法根据子集合中存在的项目从集合中获取项目。单个查询只能使用单个集合中文档的属性。

In short, I want to get the wishlist of a particular user.

所以我能想到的最简单的解决方案是在每个用户对象下添加一组最喜欢的汽车。您的新数据库结构应与此类似:

Firestore-root
|
--- users
|
--- uid
|
--- favoriteCars : ["carId", "carId"]

通过这种方式,您可以查询您的数据库以仅获取用户标记为最喜欢的汽车。您还可以将实际的汽车对象存储在数组中,而不是存储这些 ID。请参阅 here 有关优缺点的更多详细信息。

关于android - 如何查询到 Firestore 子文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53257112/

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