查询 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 文档中的参考字段 的相关文章

  • 解释 javascript 中的奇怪行为

    我在推特上看到了这个 我也无法解释 定义一个onload函数按以下两种方式工作 1 JSFiddle http jsfiddle net 6rq9k 2 JSFiddle http jsfiddle net 6rq9k 1
  • 如何处理 d3 中 Beeswarm 图中的碰撞?

    我一直在玩这个例子here https gf neocities org co2bs co2bee html一会儿 我想做的是突出显示图中的单个节点 圆圈 通过使用边框使其变大 稍后我也想在其中添加文本或字母 目前 我已经圈了Bhutan图
  • 标点符号加载“动画”,javascript?

    我正在寻找一种好方法来显示一些标点符号加载 动画 我想要的是这样的 This will display at second 1 Waiting for your input This will display at second 2 Wai
  • 有什么方法可以在不重新加载的情况下更改标头 URL? [复制]

    这个问题在这里已经有答案了 可能的重复 修改URL而不重新加载页面 https stackoverflow com questions 824349 modify the url without reloading the page 使用新
  • Firebase 云消息传递 (FCM) 令牌是否独一无二?

    我在 firebase 文档中找不到任何地方表明收到的令牌是唯一的 如果有人能指出我这样的地方 我将不胜感激 主要问题 我应该在数据库中为此类标记设置唯一约束吗 谢谢 根据文档 它们是唯一的 但您无法将它们绑定到特定设备 因为它们可能会发生
  • 在js中检测浏览器的最佳方法

    JavaScript 中有很多浏览器检测方法 据我所知 使用navigator userAgent或检测特征 例如XMLHttpRequest 等等 谁能告诉我哪种方法最好 最有效 如果你真的需要知道什么browser他们正在使用 你主要需
  • 从 url 角度加载模板并在 div 内编译

    由于我是 Angular JS 的新手 我想知道如何加载外部模板并将其与一些数据一起编译到目标中div 例如我有这个模板
  • 如何使用 jQuery UI Sortable 正确相交?

    这是我对 jQuery UI Sortable 进行动画处理的尝试 https codepen io anon pen YdMOXE https codepen io anon pen YdMOXE var startIndex chang
  • Flutter / FireStore:如何在 Flutter 中显示 Firestore 中的图像?

    我想将我在应用程序中使用的一些图像放入 Firestore 并从那里显示它们 而不是将它们作为资产捆绑在我的应用程序中 为了做到这一点 我想出了以下解决方案 对于我想要显示图像的项目 我创建了一个 Firebase 文档 其中有一个字段存储
  • 动态地将 .on() 方法与事件映射绑定

    我使用此语法来确保事件绑定动态添加li元素 ul list on click li function do something 我尝试使用这样的事件映射来存档相同的内容 ul list hammer css hacks false on s
  • 如何列出所有活动的 firebase ci 令牌,或全部撤销它们

    我意识到您可以使用以下命令创建 firebase 令牌 firebase login ci 您可以通过执行以下操作来撤销单个令牌 firebase logout token
  • 测量填写部分的时间 - 谷歌表单

    我正在尝试使用谷歌表单进行研究调查问卷 对于某些部分 我想自动测量用户填写所需的时间 谷歌表单中没有这样的选项 我尝试复制表单源 并用 javascript 填充时间 但它不起作用 跨源问题 未能成功托管复制的表单 如何做到 我如何衡量回答
  • 如何按值删除数组中的多个项目?

    我正在尝试做一个removeAll 函数 它将删除具有该特定值 而不是索引 的数组的所有元素 当我们对循环进行任何更改时 棘手的部分就出现了 索引往往会移动 使其很难像我们想要的那样工作 并且每次更改时都重新启动循环 这在大数组上效率非常低
  • apollo 客户端从存储中删除而不发生突变

    我需要通过 id 从本地存储中删除一条 记录 而不使用突变 因为服务器不支持突变 我尝试像这样手动访问商店 delete this apolloClient store getState apollo data 1112 这会删除记录 但是
  • 当应用程序未运行时如何堆叠 Firebase Cloud Messaging 通知?

    我在用Firebase Cloud Messaging将推送通知从我的服务器发送到我的 Android 应用程序 当应用程序运行时 通知是stacked因为我将它们设置为我的一个组FirebaseMessagingService 这很好 但
  • 替换打字稿中字符串中字符的所有实例?

    我正在尝试用 x 字符替换电子邮件中的所有句号 例如 电子邮件受保护 cdn cgi l email protection 将变为 myxemail emailxcom 电子邮件设置为字符串 我的问题是它不只是替换句号 而是替换每个字符 所
  • Skrollr 添加空白

    我已经尝试了一切 我在谷歌上阅读了 4 5 页试图找到适合我的修复程序 已经筋疲力尽了 即使我使用 skrollr 示例 我的问题仍然存在 不是说他们做错了什么 我知道我只是没有正确理解它 因此 我上传了一个演示 仅在移动设备上展示这个尴尬
  • 如何在 JSP 编辑器中激活 javascript 的语法着色 - Eclipse

    在某些情况下 javascript 确实必须位于 JSP 页面中 而不是位于单独的文件中 有些框架还使用Javascript做一些事情 以便用户将其包含到JSP标签中 这样JS就不会出现在
  • 允许 iframe 跨域链接到目标父框架

    我有 2 个域 域 1 上的一个页面使用 iframe 加载域 2 中的内容 如何允许来自domain2 iframe 内 的链接在domain1 的完整父框架中打开 我一直在关注IE和w3c的新沙箱属性 http www w3 org T
  • 是否可以将 Cypress e2e 测试与 firebase auth 项目结合使用?

    我正在探索 Cypress 进行 e2e 测试 看起来是很棒的软件 问题在于身份验证 Cypress 文档解释了为什么使用 UI 非常糟糕here https docs cypress io guides getting started t

随机推荐

  • 从派生类中删除虚函数

    我有一个虚拟基类函数 它永远不应该在特定的派生类中使用 有没有办法 删除 它 我当然可以给它一个空定义 但我宁愿让它尝试使用时抛出编译时错误 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 集