如何在使用函数接收集合的create事件时在cloud firestore中更新/插入其他文档

时间:2017-12-15 07:20:27

标签: node.js firebase google-cloud-functions google-cloud-firestore

让我们假设我们有两个集合说“users”和“usersList”

在具有以下对象的用户集合中创建新用户文档

{username: Suren, age:31}

该函数应该读取上述数据并更新其他集合,即单独使用用户名“usersList”,如下所示

{username: Suren}

让我知道可能性

我试过的代码是

exports.userCreated = functions.firestore.document('users/{userId}').onCreate((event) => {
const post = event.data.data();

return event.data.ref.set(post, {merge: true});

})

2 个答案:

答案 0 :(得分:2)

我使用下面的代码

完成了它
exports.userCreated = functions.firestore.document('users/{userId}')
.onCreate((event) => {
    const firestore = admin.firestore()
    return firestore.collection('usersList').doc('yourDocID').update({
        name:'username',
      }).then(() => {
        // Document updated successfully.
        console.log("Doc updated successfully");
      });
})

答案 1 :(得分:1)

如果你要做的就是从文档中删除age属性,你可以这样做:

exports.userCreated = functions.firestore.document('users/{userId}').onCreate((event) => {
    const post = event.data.data();
    delete post.age;
    return event.data.ref.set(post);
})