Firebase:是否可以更新多个父母的个别孩子?

时间:2017-05-12 03:58:34

标签: ios swift firebase firebase-realtime-database google-cloud-functions

是否可以在不影响其他孩子的情况下更新多个父母的个别孩子?

这是我的Firebase数据的样子:

notifications:
    uniquenotif1:
        a: true
        b: true
    uniquenotif2:
        a: true
        b: true

我尝试使用Swift更新名为a的孩子:

notificationsRef.updateChildValues([uniquenotif1: [a:false], uniquenotif2: [a:false])

这导致数据如下:

notifications:
    uniquenotif1:
        a: false
    uniquenotif2:
        a: false

这就是我希望它们的样子:

notifications:
    uniquenotif1:
        a: false
        b: true
    uniquenotif2:
        a: false
        b: true

要求是这需要作为单个操作发生(我使用云功能发送依赖于这些值的推送通知)。

如果可能的话,我不想传递孩子的所有价值(ab)。

1 个答案:

答案 0 :(得分:0)

请看一下:

let key = ref.child("notifications").childByAutoId().key
let noti = ["a": false,
            "b": true]
let childUpdates = ["/notifications/\(key)": noti]
ref.updateChildValues(childUpdates)

您需要for循环才能生成一系列请求。这是我的看法。请告诉我你是否有更好的解决方案。 ^^