【问题标题】:Concatenate Firebase DB calls连接 Firebase 数据库调用
【发布时间】:2019-03-29 21:43:53
【问题描述】:

我有一个 Firebase 云函数,我必须根据提供的 ID 获取更多数据,请参见下面的代码:-

return admin.firestore().collection('companies').doc(snap.data().companyId).get().then((company) => {
    return admin.firestore().collection('customers').doc(snap.data().companyId).get().then((customer) => {
         console.log(company, customer);
    })
})

有没有一种方法可以组合这些调用,这样我就不必在每次需要获取数据时对数据库进行 2 次调用?

这将有助于降低成本并帮助停止拨打昂贵的电话。

此示例只有两个级别的调用,有时可以达到三个调用,具体取决于我从云函数内部的数据库中需要什么信息。

任何帮助将不胜感激。

【问题讨论】:

    标签: javascript typescript firebase google-cloud-firestore


    【解决方案1】:

    您不能同时查询两个不同的集合。您要么必须执行多个查询,要么提前将数据加入到单个集合中以查询包含所有数据。这称为“非规范化”,在没有类似 SQL 的连接操作的 NoSQL 数据库中很常见。

    【讨论】:

      猜你喜欢
      • 2021-07-28
      • 2019-04-27
      • 2019-03-14
      • 2020-02-24
      • 1970-01-01
      • 1970-01-01
      • 2017-04-02
      • 1970-01-01
      • 2018-08-21
      相关资源
      最近更新 更多