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



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

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

如果没有,有人能说一种方法来构建数据,这样我就可以实现这个功能了吗。谢谢

您可以使用not-in查询。下面是一个简单的例子(取自文档(:

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

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

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

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

citiesRef.where('__name__', 'not-in', ['123', '456']);
  • not-in的文档:https://firebase.google.com/docs/firestore/query-data/queries#in_not-in_and_array-contains-any
  • documentId的文档:https://firebase.google.com/docs/reference/js/firebase.firestore.FieldPath#static-documentid

最新更新