gpt4 book ai didi

swift - 按子查询 Firebase 数据

转载 作者:行者123 更新时间:2023-11-30 11:54:39 24 4
gpt4 key购买 nike

我现在长期使用 swift 和 Firebase,但面临着我的一个查询无法正常工作的问题。

我的每条消息都分配了一个创建日期,当我加载消息时,我可以从数据中调用它,但我无法通过子“creationDate”加载它,它是我的时间戳节点。

我的消息像在聊天应用程序中一样发送,没有问题,以下是我用于查询数据的代码。正如我提到的,路径是正确的,代码仅用于测试目的

注意:这只是一个代码片段,用于测试路径是否正确

    func checkMessages() {
guard let currentUser = API.User.CURRENT_USER?.uid else {return}
API.Message.REF_MESSAGES_CHAT.child(currentUser).queryOrdered(byChild: "creationDate").observeSingleEvent(of: .value) { (snapshot) in

if let dict = snapshot.value as? [String:Any] {
for key in dict.keys {

if let value = dict[key] as? [String:Any] {
let creationDate = value["creationDate"] as! Double
let text = value["text"] as! String

print("creation:" , creationDate)
print("text:", text)
}
}
}
}
}

打印输出为

creation: 1514041174.13297
text: 8
creation: 1514041177.54951
text: 10
creation: 1514041171.24212
text: 6
creation: 1514041172.35241
text: 7
creation: 1514041168.06832
text: 3
creation: 1514041166.98511
text: 2
creation: 1514041170.10783
text: 5
creation: 1514041165.88657
text: 1
creation: 1514041169.09632
text: 4
creation: 1514041175.60879
text: 9

我按照正确的顺序发送了它们(1,2,3,4,5,6,7,8,9,10)。任何想法?我在这一点上真的很挣扎,因为我已经在我的应用程序中实现了 30 多次此功能,并且在其他任何地方都只是查询此功能。

编辑:上传消息

        let creationDate = Date().timeIntervalSince1970
let timestamp = ["creationDate": creationDate, "text": text] as [String : Any]
API.Message.REF_MESSAGES_CHAT.child(currentUser).child(newMessageID).setValue(timestamp)

最佳答案

API.Message.REF_MESSAGES_CHAT.child(currentUser).queryOrdered(byChild: "creationDate").observeSingleEvent(of: .value) { snapshot in ... }

关于swift - 按子查询 Firebase 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47953672/

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