gpt4 book ai didi

ios - 如何在 Firebase DB 中更新子项的特定值

转载 作者:可可西里 更新时间:2023-10-31 23:55:36 25 4
gpt4 key购买 nike

我正在关注这个 document .以下是我的更新代码:

func updateDealResultToServer(key:String,dealResult : String)
{

let post = ["dealResul": dealResult]
let childUpdates =
["/komal_xyz/\(key)": post
]

rootRef.updateChildValues(childUpdates)

}

这是我的 Firebase 数据库结构: enter image description here

我只想更改 dealResult 的值。每当我尝试为特定子节点(如 1473670100726)运行上述代码时,除 dealResul 之外的其他值都会被删除。

最佳答案

要更新 Firebase 实时数据库中特定节点的值,请使用:-

  • 您可以使用 runTransactionBlock:

      func updateTotalNoOfPost(completionBlock : (() -> Void)){


    let prntRef = FIRDatabase.database().reference().child("komal_kyz").child(your_AuroID).child("dealResul")

    prntRef.runTransactionBlock({ (resul) -> FIRTransactionResult in
    if let dealResul_Initial = resul.value as? Int{

    //resul.value = dealResul_Initial + 1
    //Or HowSoEver you want to update your dealResul.
    return FIRTransactionResult.successWithValue(resul)
    }else{

    return FIRTransactionResult.successWithValue(resul)

    }
    }, andCompletionBlock: {(error,completion,snap) in

    print(error?.localizedDescription)
    print(completion)
    print(snap)
    if !completion {

    print("Couldn't Update the node")
    }else{

    completionBlock()
    }
    })

    }

    调用这个函数时:-

    updateTotalNoOfPost{
    print("Updated")
    }
  • 或者只调用updateValues

        let prntRef  = FIRDatabase.database().reference().child("komal_kyz").child(your_AuroID)
    prntRef.updateChildValues(["dealResul":dealResult])

PS:- 如果你只想增加一个特定的节点。另请阅读:- https://stackoverflow.com/a/39458044/6297658

关于ios - 如何在 Firebase DB 中更新子项的特定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39462410/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com