3

如何使用 Cloud Functions for Firebase 数据库触发器来编辑/更新现有数据?

我的用例:我的 Firebase 数据库中有现有数据,比如说a/{uid}/b,在撰写本文时,我在b已定义的 db 中有 14-15 个 uid。现在我想使用云功能来监听写入b并在此基础上添加更多数据。

数据库触发器functions.database.ref('/a/{uid}/b').onWrite只会对特定路径的新写入/更新执行,而不是对现有写入/更新执行。

当我想一次更新现有写入逻辑的所有数据时,Cloud Functions for Firebase 如何提供帮助?

4

1 回答 1

0

我也有类似的情况。我找到了一种解决方法来执行该功能。这对于生产数据库并不理想,但对我来说适用于小型数据库。

将现有数据从集合(或整个数据库)导出到具有触发器功能的文件中。

然后删除从数据库中导出的数据。(请注意,如果您有 onWrite 功能,它也会在删除时执行。确保代码正确处理它)

导出集合的命令

firestore-export --accountCredentials=/path/credentials.json --nodePath collectionName

然后使用以下命令导入同一集合中的备份数据。

firestore-import --accountCredentials=/path/credentials.json --backupFile /path/backupFilename.json --nodePath collectionName

有关 firebase-export npm 包的更多信息 @ https://www.npmjs.com/package/node-firestore-import-export

于 2019-02-20T07:43:42.190 回答