查询 Firestore 文档中的参考字段

2024-03-18

我正在尝试编写一个函数,在文档(Firestore“艺术家”集合中)中的数据发生更改后,Google Cloud Functions 将查找另一个集合(“显示”)中具有引用字段的所有文档( 'artist')指向刚刚更改的文档(在 'artists' 集合中)。

我似乎不知道如何查询参考字段。我已经尝试了一切,从使用艺术家文档的 ID、到路径、再到完整的 URL。但我在 Google Cloud Function 控制台中收到错误:

Error getting documents Error: Cannot encode type ([object Undefined]) to a Firestore Value

这是我的代码示例:

exports.updateReferenceArtistFields = functions.firestore
  .document('artists/{artistId}').onWrite(event => {
  var artistRef = event.data.data();
  var artistId = artistRef.id;
  var ShowsRef = firestore.collection('shows');
  var query = ShowsRef.where('artist', '==', artistId).get()
      .then(snapshot => {
          snapshot.forEach(doc => {
              console.log(doc.id, '=>', doc.data());
          });
      })
      .catch(err => {
          console.log('Error getting documents', err);
      });
});

我会直接从参数中获取artistId,如下所示:

var artistId = event.params.artistId;

Example:

exports.updateReferenceArtistFields = functions.firestore
  .document('artists/{artistId}').onWrite(event => {
  var artistId = event.params.artistId;
  var showsRef = firestore.collection('shows');
  var query = showsRef.where('artist', '==', artistId).get()
      .then(snapshot => {
          snapshot.forEach(doc => {
              console.log(doc.id, '=>', doc.data());
          });
      })
      .catch(err => {
          console.log('Error getting documents', err);
      });
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

查询 Firestore 文档中的参考字段 的相关文章

随机推荐

  • 从派生类中删除虚函数

    我有一个虚拟基类函数 它永远不应该在特定的派生类中使用 有没有办法 删除 它 我当然可以给它一个空定义 但我宁愿让它尝试使用时抛出编译时错误 C 11delete说明符似乎是我想要的 但是 class B virtual void f cl
  • 在同一项目中使用亚音速 2.x 和 3.x

    可以将它们混合吗 我这么问是因为我有一个大项目使用 Subsonic 2 x 生成的类 在编译的 dll 中 但想开始使用 3 x 来处理新东西 我昨晚在一个项目中尝试了它 其中我引用了 subsonic dll 和 subsonic co
  • 如何在 po gettext 文件中将空翻译 (msgstr) 标记为已翻译?

    我发现字符串 msgid 的翻译为空 所有 gettext 工具都会将该字符串视为未翻译 有解决方法吗 我确实想要一个空字符串作为该项目的翻译 由于这似乎是 gettext 规范中的一个很大的设计缺陷 我决定使用 Unicode Chara
  • Spark Streaming数据放入HBase的问题

    我是这个领域的初学者 所以我无法理解它 HBase 版本 0 98 24 hadoop2 火花版本 2 1 0 以下代码尝试将从 Spark Streming Kafka 生产者接收的数据放入 HBase 中 Kafka输入数据格式是这样的
  • 点“.”的 java keyevent 字段是什么?

    我知道如何使用 keyevent 调用 1 应该像 aaa keyPress KeyEvent VK 1 现在我需要输入 点 但我找不到 KeyEvent VK DOT 或一些类似的命令 请帮忙 Thanks 这个 点 被称为period
  • 如何使用带有条纹元素的引导浮动标签?

    我想知道如何使用浮动标签设置条纹元素的样式 bootstrap 5 我的所有其他字段都采用这种方式设计 因此最好对信用卡输入和 cvv 输入进行设计 以匹配我网站的主题 我尝试过使用以下答案 如何使用 Bootstrap 设置 Stripe
  • 从本地开发环境访问ElastiCache memcache实例

    有没有办法从本地开发环境访问缓存节点 尽管可以从 EC2 实例访问相同的缓存节点 我正在使用带有 C 的 Enyim memcache 客户端库 我发现很少有文章说这是不可能的 那么最好的方法应该是什么 我是否需要在本地设置内存缓存以进行开
  • 最流行的 C 通用集合数据结构库是什么?

    我正在寻找一个提供通用集合数据结构 例如列表 关联数组 集合等 的 C 库 该库应该稳定且经过良好测试 我基本上是在寻找比蹩脚的 C 标准库更好的东西 哪些 C 库符合此描述 编辑 我希望该库是跨平台的 但如果做不到这一点 任何可以在 Ma
  • 将数据存储在自定义字段中或将附件存储在 ics iCal 文件中

    我需要为我手动构建的 iCal 文件 ics 提供一些我实际上不希望日历应用程序用户看到的附加信息 因此 当我在 iOS 应用程序中创建事件并 稍后 从日历事件中读取它们时 我需要能够手动设置它们 我想知道是否可以将自定义字段 属性添加到
  • 使用 dplyr 进行 SQL in-db 操作时的 ifelse 和 grepl 命令

    在R数据帧上运行的dplyr中 很容易运行 df lt df gt mutate income topcoded ifelse income gt topcode income topcode 我现在正在使用一个大型 SQL 数据库 使用
  • SharePoint Designer 动态重新格式化 HTML,是否可以禁用?

    在我彻底放弃之前 我一直在尝试修改 SharePoint Designer 中的一些母版页 每当我更改 HTML 标记时 它都会根据需要重新设置它们的格式 例如 我试图使代码可读 因此我将项目移动到自己的行等 一旦我保存 它就会将所有内容移
  • 将数据从 s3 复制到带有前缀的本地

    我正在尝试使用 aws cli 将数据从 s3 复制到带有前缀的本地 但我在使用不同的正则表达式时遇到错误 aws s3 cp s3 my bucket name RAW TIMESTAMP 0506 profile prod error
  • DirectQuery 模式下的 AAS 表格模型性能优势

    假设您有 10 个相当大的事实表 每个 50 100 GB 应该使用 Power BI 进行查询 它们不适合 Azure Analysis Services RAM 价格合理 因此 为了使用表格模型和 AAS 您必须使用以下模式 1 Pow
  • 如何在 Playframework 中将 Oracle 存储过程与 Scala Anorm 结合使用

    我有许多存储过程 其结果是字符串列表 我如何使用scala访问play 2 0框架中的refcurser 有人可以举一个简单的例子 我如何填写一个列表吗 我试过这个 case class XXXX name String descripti
  • 为什么 UIView 中有一个框架矩形和一个边界矩形?

    好吧 虽然已经是深夜了 但我不明白为什么有两个不同的矩形 frame and bounds 据我了解 一个矩形就足以完成所有操作 相对于另一个坐标系定位视图本身 然后将其内容剪切到指定的大小 你还想用两个矩形做什么 他们如何相互作用 有人有
  • 通过循环在renderUI中创建Value Box

    我想根据我拥有的数据创建一个值框 假设我有 5 个数据变量consumerdata像这样 id data number1 number2 1 k4j A 67 53 2 rls B 30 62 3 yv9 C 45 28 4 l6h D 6
  • 如何在 Eclipse 中使用 SonarLint

    我被分配使用 SonarQube 来提高代码质量 但是当我将它的插件下载到 Eclipse 时 我知道它已被弃用 新的 插件是 SonarLint 但到目前为止 我找不到任何关于如何使用 SonarLint 的好的文档 如何使用它检查jav
  • Delphi 2010远程调试-无法使断点工作

    我最近发布了这个问题 https stackoverflow com questions 4579654 no breakpoints when remote debugging with delphi 2010 so stuck on d
  • 如何从C中的文件中读取最后n行

    这是一道微软面试题 使用 C 读取文件的最后 n 行 精确地 实现这一目标的方法有很多 但其中很少有 gt 最简单的是 在第一遍中 计算文件中的行数 在第二遍中显示最后 n 行 gt 或者可以为每一行维护一个双向链表 并通过向后遍历链表直到
  • 查询 Firestore 文档中的参考字段

    我正在尝试编写一个函数 在文档 Firestore 艺术家 集合中 中的数据发生更改后 Google Cloud Functions 将查找另一个集合 显示 中具有引用字段的所有文档 artist 指向刚刚更改的文档 在 artists 集