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

如何在firestore查询中筛选出某些文档

阮轶
2023-03-14

我希望在我的社交应用程序中实现朋友搜索功能。为此,我尝试在DB的“用户”集合中查询每个用户的文档,但它应该排除一些特定文档,例如当前用户已经是朋友的用户或请求待定的用户。

是否可以通过在Firestore中传递这些文档引用ID来查询所有用户文档,不包括特定文档。

如果没有,有人能说一种结构化数据的方法,以便我可以实现这个功能吗?谢谢。

共有1个答案

解沈义
2023-03-14

您可以在查询中使用not。下面是一个简单的例子(摘自文档):

citiesRef.where('country', 'not-in', ['USA', 'Japan']);

由于要按ID进行查询,因此可以使用firebase。firestore。FieldPath。documentId()作为字段名(源)

citiesRef.where(firebase.firestore.FieldPath.documentId(), 'not-in', ['123', '456']);

或者,您可以尝试使用'__name__'字段名称(source):

citiesRef.where('__name__', 'not-in', ['123', '456']);
  • 不在中的文档:https://firebase.google.com/docs/firestore/query-data/queries#in_not-in\u and\u array-contains-any
 类似资料:
  • 我想知道如何按日期字段筛选firebase firestore,因为我看不到字符串、数字、布尔值以外的数据类型 如下所示,如果有人找到了一种基于日期字段筛选firestore集合的方法,请提供建议。

  • 假设我有一个班级: 我有另一个类,其中用户登录,并且根据他是管理员还是普通用户,用户可以访问有限的枚举列表。我知道我可以从类中获取所有枚举的完整列表,但是在枚举类不知道用户信息的情况下,通过某些标准过滤这些枚举的优雅方法是什么? 编辑:以下是它今天的样子: 我正在返回1000个事件的完整列表,而管理员应该只看到有限的数量。

  • 我有一个云Firestore DB,其结构如下: null null 有人能想出一个优雅的解决这个问题的办法吗?

  • 问题内容: 我正在使用Firebase函数和Firebase Firestore开发用于存储用户数据的API。 我想使用存储在其字段中的属性来查找文档。这是Firebase文档,其中说明了如何实现相同的功能。 我想处理两种情况 在没有文件的情况下 有两个以上具有当前条件的文件 如何处理以上两种情况? 问题答案: 按照上面的注释中的“讨论”,在Cloud Function中,您可以使用方法返回的方法

  • 我正在使用Firebase函数和Firebase FiRecovery开发一个存储用户数据的API。 我想使用存储在字段中的属性来定位文档。这是Firebase文档,其中说明了如何实现相同的目标。 我想处理两种情况 > 如果没有符合当前条件的文件 如果有两份以上的现有条件文件 上述两种情况如何处理?

  • 我在使用firestore查询“wherequalto”时遇到了麻烦。我试图从一个名为“参与者”的集合中获取图像,但当文档不存在时,应该使用else语句并移动到更新文档的下一个活动。但是在onComplete侦听器(即任务)中从集合中查询文档时,文档没有退出,而是代码运行到if(Task.issucessful){}中,并且没有使用else语句。我的代码:有谁能帮我吗?谢谢