Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud firestore Firestore子集合查询_Google Cloud Firestore - Fatal编程技术网

Google cloud firestore Firestore子集合查询

Google cloud firestore Firestore子集合查询,google-cloud-firestore,Google Cloud Firestore,我的Firestore数据库的结构如下 vendors (collection): [ vendor_ids(docs): [ products(collection):[ product_ids(docs): {product_object} (data) ] ] ] 我想要像=> firestore.collection(vendors).doc('{wildcard_vendor_id}').collections("products).

我的Firestore数据库的结构如下

vendors (collection):
[
  vendor_ids(docs): [
    products(collection):[
       product_ids(docs): {product_object} (data)
     ]
  ]
]
我想要像=>

firestore.collection(vendors).doc('{wildcard_vendor_id}').collections("products).where(product_id == "provided_id")

产品id也可以是文档id。数据还包含产品id,因此任何一种解决方案都是正确的

注意:上面写的查询仅用于表示目的。查询可能不正确。但是,我正在寻找解决这些问题的方法。


谢谢

Firestore没有通配符查询。如果可能的话,您必须找到一种方法来组织数据,以支持所需的查询类型。如果要查询所有
产品
集合,您需要查找集合组查询:。但这些将查询该名称的所有集合,无论它们在数据库中的位置如何。我当前的解决方案使用的方法类似于vendors.forEach(vendor=>{firestore.collection(vendors.doc(vendor.collection(product)).forEach(snapshot=>if(snapshot.data==id){console.log(domywork)}