firebase Cloud Firestore -从特定文档中获取特定项目的查询,

2lpgd968  于 2023-10-22  发布在  其他
关注(0)|答案(1)|浏览(133)

附件是我的数据库结构。如何通过其id获取特定的saleOrder项目?

下面是我的查询,但它不工作。先谢谢你了。

const ref = collection(db, 'customers', customerId, 'saleOrders');
const q = query(ref, where('id', '==', saleOrderId));
const querySnapshot = await getDocs(q);
s3fp2yjn

s3fp2yjn1#

要查询

collection(db, 'customers', customerId, 'saleOrders');

所以这是:

  • 一个集合customers
  • 里面有一个customerId的文档,我想你已经有了
  • 下面有一个名为saleOrders子集合 *,您没有**

不能使用这样的查询运算符查询嵌套Map字段。即使你可以,它也不会完成任何事情--因为Firestore客户端SDK总是返回完整的文档,而不是其字段的子集。
你有几个选择:

  • 最合乎逻辑的做法是创建一个实际的saleOrders子集合,将ID作为顶级字段存储在其中,然后像现在这样查询该子集合。
  • 或者,您可以加载您现在拥有的完整文档,并在客户端代码中筛选销售订单。

相关问题