【发布时间】:2019-09-28 21:08:25
【问题描述】:
我想在使用 firestore 的一次查询中查询用户 (user1) 与其为朋友的所有用户。
目前,我在每个用户对象中都有一个“朋友”字段,因此为了获取与 user1 成为朋友的用户,我调用:
friendsOfUser1 = db.collection('users').where('friends', 'array-contains', user1).stream()。
这在用户只有
有没有办法将朋友数组存储在用户文档之外,同时仍然能够在一次查询中查询用户的朋友?这就是现在的结构:
用户1: {朋友:[“user2”,“user3”,“user7”,“user9”], 名称:“John Sci”}
用户2: {朋友:[“user1”,“user4”,“user8”,“user12”], 名称:“埃尔莫广场”}
用户3: {朋友:["user1", "user7", "user9"]}
所以 db.collection('users').where('friends', 'array-contains', user1).stream() 将给出 [user2, user3]。
【问题讨论】:
-
请在发帖前查看编辑框下方帖子的格式化版本。阅读代码和引用的内联和块格式的编辑帮助。
标签: firebase database-design nosql google-cloud-firestore