Firestore:按地图查询文档数组中的内容

时间:2019-06-03 08:45:21

标签: javascript google-cloud-firestore

我需要执行查询以返回与一个特定用户ID相关联的文档列表

database structure

这行得通,因为我发送的是完全相同的地图。

firestore.collection('conversations').where('users', 'array-contains', {id: 1, username: 'john')

我认为这不起作用,因为我只发送ID

firestore.collection('conversations').where('users', 'array-contains', {id: 1})

是否可以这样做,否则我将不得不“手动”过滤所有记录?谢谢!

1 个答案:

答案 0 :(得分:0)

array-contains目前不支持查询数组中对象的字段。但是您可以重组数据,以便可以使用它。 请参阅以下链接,获取关于同一问题的已在SO上提供的答案。

Firestore to query by an array's field value

How to query documents containing array of objects in Firestore collection using whereArrayContains() filter on Android?