0

我在使用以下结构从 Firestore 获取数据时遇到问题

在此处输入图像描述

这是我获取类别集合的方法:

app.get('/getProjectsNo', (request, response) => {
  response.set('Access-Control-Allow-Origin', '*')

  let orders = []

  db.collection('companies').doc('renaultsomaca').collection('orders').get().then(snapshot => {
    snapshot.forEach((doc) => {
      orders.push(doc.data())
    });
    response.send(orders)
  })
})

它给了我:订单列表。但我需要在不使用 doc('renaultsomaca') 的情况下获得订单。因为我只需要所有订单,而不仅仅是 renaultsomaca 订单。

4

1 回答 1

0

您所描述的称为集合组查询,它查询具有特定名称的所有集合。

要从orders集合中获取所有文档,无论它们在数据库中的哪个位置,您都可以:

const querySnapshot = await db.collectionGroup('orders').get();
querySnapshot.forEach((doc) => {
  console.log(doc.id, ' => ', doc.data());
});

无法指定orders集合的​​路径,因此如果您有多种类型的订单要分别查询,则必须为它们指定不同的名称。

于 2020-10-13T01:56:26.487 回答