gpt4 book ai didi

ios - FIREBASE 数据库 - 将唯一键存储到子节点(Swift/IOS)

转载 作者:搜寻专家 更新时间:2023-10-30 21:51:04 25 4
gpt4 key购买 nike

我试图在调用 childByAutoId 时存储生成的 Unique Key。从理论上讲,这将有助于在我的应用程序中稍后需要发生的指定子项上映射更新或更改。

我对 Firebase 的分层数据库相当陌生,如果下面描述的方法不正确,请不要犹豫,提供替代方法。

我是 Firebase 的新手,有一个多人应用程序,我的结构目前如下所示:

"HTGames" : {

"-KFGX5H3rLSnpPvupakm" : {
{
"Red" : 1,
"Green" : 3,
"Blue" : 2,
"GameLimit" : 1,
"P1Name" : 3,
"P2Name" : 2,
"P3Name" : 1,
"P1Points" : 3,
"P2Points" : 2,
"P3Points": 3,
"numberOfPlayers" : 1.
"gameStart": true
}
},
"-X5Hhgljh3rLSnpPvum" : {
{
"Red" : 1,
"Green" : 3,
"Blue" : 2,
"GameLimit" : 1,
"P1Name" : 3,
"P2Name" : 2,
"P3Name" : 1,
"P1Points" : 3,
"P2Points" : 2,
"P3Points": 3,
"numberOfPlayers" : 1.
"gameStart": true
}}}
}

下面的 Swift 方法调用...

func startNewGame(){
//Database reference object
let databaseRef = FIRDatabase.database().reference()

let gameTable : [String : AnyObject] = ["Green": "", "Red": "", "Blue": "", "GameTypePoint": "","P1Name": "", "P2Name": "", "P3Name": "", "P1Points": "","P2Points": "", "P3Points": "","NumOfPlayers": "","GameStart": ""]

//Auto generates unique ID and creates child under "HTGame" parent
databaseRef.child("HTGame").childByAutoId().setValue(gameTable)

//**********I would like to store key locally here*********//
//let key =
}

最佳答案

如果您保留对它的引用,您可以从新 child 那里获取 key :

let newRef = databaseRef.child("HTGame").childByAutoId()
newRef.setValue(gameTable)

let key = newRef.key

保存数据指南中有更多相关信息:https://firebase.google.com/docs/database/ios/save-data#append_to_a_list_of_data

关于ios - FIREBASE 数据库 - 将唯一键存储到子节点(Swift/IOS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38858583/

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