我正在使用Firebase实时数据库来存储用户的位置列表。目前,而不是将一个项目添加到firebase中的用户列表中,而是将其替换。如何在用户向tableview添加位置时创建附加列表?所以我希望数据的结构是:
USER_ID PlaceName:locationA locationB locationC
这可能吗?这是我目前的代码:
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "LabelCell", for: indexPath)
for place in storedPlaces {
storedNames.append(place.name)
}
cell.textLabel?.text = storedNames[indexPath.row]
let Pname: String = (cell.textLabel?.text!)!
print(Pname)
let PplaceID = "Hello"
let post : [String: AnyObject] = ["storedName" : Pname as AnyObject, "placeID" : PplaceID as AnyObject]
let databaseRef = FIRDatabase.database().reference()
databaseRef.child("PlaceNames").child((user?.uid)!).setValue(post)
return cell
答案 0 :(得分:3)
我认为你想要的是让firebase定义位置节点键:
let databaseRef = FIRDatabase.database().reference()
databaseRef.child("PlaceNames").child((user?.uid)!)
locationRef = databaseRef.childByAutoId()
locationRef.setValue(post)
这将产生Firebase结构:
PlaceName
uid_0
-YUisisokapoksa
storedName: "some name"
placeID: "some id"
-YNisimaii990js
storedName: "some name"
placeID: "some id
有关使用childByAutoId的Firebase Getting Started Guide的一些信息 - 在更新或删除数据部分