如何使用Cloud Functions for Firebase数据库触发器编辑/更新现有数据?
我的使用案例:
我的Firebase数据库中有现有数据,比如说a/{uid}/b
,在撰写本文时,我已经在数据库中有14-15个uid已定义b
。现在我想使用云函数来监听写入b
并根据它添加更多数据。
数据库触发器functions.database.ref('/a/{uid}/b').onWrite
仅针对特定路径的新写入/更新执行,而不是针对现有写入/更新执行。
当我想为现有的写入逻辑一次更新所有数据时,Firebase的云功能如何提供帮助?
答案 0 :(得分:0)
我也有类似的情况。我找到了一种解决方法来执行该功能。对于生产数据库而言,这不是理想的选择,但是对于我来说,对于小型数据库而言,它是可行的。
将集合(或整个数据库)中的现有数据导出到具有触发功能的文件中。
然后删除从数据库导出的数据。 (请注意,如果您具有onWrite函数,它也会在delete时执行。请确保代码正确处理了该函数)
用于导出集合的命令
closeModal() {
this.modalCtrl.dismiss();
}
然后使用以下命令将备份数据导入同一集合中。
firestore-export --accountCredentials=/path/credentials.json --nodePath collectionName
有关firebase-export npm软件包@的更多信息 https://www.npmjs.com/package/node-firestore-import-export