Firestore:从id为x的'sub'集合中获取所有项目

时间:2018-03-05 18:59:17

标签: angularjs firebase google-cloud-firestore

我正在使用云端防火墙作为后端数据库,因为我不熟悉它...我对以下内容有点困惑。

数据库设置: 消息(集合) - > itemId(doc) - > itemMessages(collection) - >消息(doc) - >消息数据有(message,xId,yId)

我的问题是..如何查询itemId的所有itemMessages,其中xid = 1?

或者是否有更好的数据库设置解决方案?我检查了文档,但这些文档中并没有“子”集合。

1 个答案:

答案 0 :(得分:1)

[Firebaser here] 无法在子集合中进行查询,这意味着您想要查找属于任何"项目的所有itemMessages"与您的查询匹配,您不能这样做。

您可以像这样查询特定的子集合:

db.collection("Messages")
  .doc("someItemId")
  .collection("itemMessages")
  .where("xid", "==", "foobar")

跨子集查询的功能是我们今后肯定要做的事情,但它不会在短期内出现,所以如果您现在需要,我建议使用不同的数据库结构。