我是一名新的程序员并且正在与firebase挣扎...... firebase网站上的内容对于没有经验的人来说还不够。我正在尝试在现有节点中添加新信息(-KrgRoE_GoZGoMZk_bxl)但是我根本做不到...看到我可以使用下面的代码获得我的最后一个注册:
ref = FIRDatabase.database().reference()
let last = ref?.child("CAD").child((FIRAuth.auth()?.currentUser?.uid)!)
last!.observeSingleEvent(of: .value, with: { (snapshot) in
print(snapshot.children.allObjects.last)
查看firebase数据:
tIFgcSHDWAYguUJ5jNPYhfuqT903
KrgRoE_GoZGoMZk_bxl
{
"COORDENADAS" : "(-25.462915289401252, -49.290945083371739)",
"DATA" : "16/08/2017",
"HORA" : "16:9:23",
"LOCALIZACAO" : "Rua Professor Basílio Ovídio da Costa, 19",
"PERIODO" : "1 Hora",
"VALOR" : 3
}
答案 0 :(得分:0)
根据documentation,您使用setValue
添加新数据,使用updateChildValues
更改数据。此外,您可以使用查询来限制返回到最后一个数据的子项数,而不是观察当前用户下的所有数据的值。现在我并不完全确定您尝试添加到子节点的内容,但访问一个子节点并向其添加新数据可能如下所示:
ref = FIRDatabase.database().reference()
let last = ref?.child("CAD").child((FIRAuth.auth()?.currentUser?.uid)!)
last!.queryLimited(toLast: 1).observeSingleEvent(of: .value, with: { (snapshot) in
print(snapshot.value)
let value = snapshot.value as? NSDictionary
// Do whatever you need to do with value
let key = snapshot.key
last.child(key).setValue(["newData": newData]) // add new key/value pair
})