gpt4 book ai didi

ios - Firebase 不接受所有参数

转载 作者:行者123 更新时间:2023-11-28 15:32:54 26 4
gpt4 key购买 nike

我的代码如下。一旦我到达我正在写入数据库的部分,它似乎跳过了 ContestName。然后它将竞赛描述和用户记录到数据库中。如果我将 contestDescription 放在 contestName 之前,那么 contestDescription 会丢失,但名称会被存储。真的很时髦的错误。任何帮助,将不胜感激。

注意:我试过 sleep ,但一点用都没有。

@IBAction func SubmitContest(_ sender: Any) {

//Convert to text
let contesttitle = ContestName.text;
let contestdescript = ContestDescription.text;

//Some Firebase Stuff
let userID = Auth.auth().currentUser?.uid
let contestRef = ref.child("craftType").child("Custom")
let thisContest = contestRef.childByAutoId()

//Store to firebase
//Whatever one is first is not making it to firebase database
thisContest.setValue(["ContestName": contesttitle])
thisContest.setValue(["ContestDescription": contestdescript])
thisContest.child("User").setValue(userID)
}

最佳答案

在某个位置调用 setValue 会替换该位置的所有现有数据。所以在这个片段中:

thisContest.setValue(["ContestName": contesttitle])
thisContest.setValue(["ContestDescription": contestdescript])

第二行替换第一行所写的内容。

你应该将两者结合起来:

thisContest.setValue(["ContestName": contesttitle, "ContestDescription": contestdescript])

use updateChildValues (它不会替换该位置的全部数据,而只会替换您指定的属性):

thisContest.updateChildValues(["ContestName": contesttitle])
thisContest.updateChildValues(["ContestDescription": contestdescript])

关于ios - Firebase 不接受所有参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44599461/

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