gpt4 book ai didi

swift - 在 Swift 中将 Firebase 的一个子节点从一个节点更改为另一个节点

转载 作者:行者123 更新时间:2023-11-30 12:05:08 25 4
gpt4 key购买 nike

这是我的数据库结构:

users
user1
nodeA
nodeToBeMoved
content : content1
date : date1
user2
nodeB

我正在寻找将“nodeToBeMoved”从节点 A 移动到节点 B,我尝试将 content1 和 date1 放入变量“value”中,然后删除“nodeToBeMoved”,然后将变量添加到节点B. 但由于某种原因我的应用程序崩溃了。这是我的代码:

self.ref.child("users").child(user1).child(nodeA).child(nodeToBeMoved).observe(.value, with: { (snapshot) in
let value = snapshot.valueInExportFormat() as AnyObject
self.ref.child(users).child(user1).child(nodeA).child(nodeToBeMoved).removeValue()
self.ref.child(users).child(user2).child(nodeB).child(nodeToBeMoved).child(content).setValue(value["content"] as Any)
self.ref.child(users).child(user2).child(nodeB).child(nodeToBeMoved).child(date).setValue(value["date"] as Any)



}) { (error) in
print(error.localizedDescription)
}

我相信变量类型有问题。有人可以帮我解决这个问题吗?这也是我的方法,但是如果您知道更好的方法,请随时说出来。

最佳答案

试试这个`

self.ref.child("users").child(user1).child(nodeA).child(nodeToBeMoved).observe(.value, with: { (snapshot) in
let value = snapshot.value as NSdictionnary
if let actualvalue = value {
self.ref.child(users).child(user1).child(nodeA).child(nodeToBeMoved).removeValue()
self.ref.child(users).child(user2).child(nodeB).child(nodeToBeMoved).child(content).setValue(actualvalue["content"] as Any)
self.ref.child(users).child(user2).child(nodeB).child(nodeToBeMoved).child(date).setValue(actualvalue["date"] as Any)

}




}) { (error) in
print(error.localizedDescription)
}

关于swift - 在 Swift 中将 Firebase 的一个子节点从一个节点更改为另一个节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46760791/

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