如何从 Firebase 数据库中的 autoID 获取价值 - Swift
Posted
技术标签:
【中文标题】如何从 Firebase 数据库中的 autoID 获取价值 - Swift【英文标题】:How to get value from autoID in Firebase Database - Swift 【发布时间】:2021-01-30 22:32:18 【问题描述】:我有这段代码,我想显示来自 Firebase 数据库的 AutoIds 值的计数。 '
let uid = Auth.auth().currentUser?.uid
let ref = Database.database().reference().child("userInfo").child(uid!)
ref.child("users").child(//here should be an auto Id from firebase).observe(DataEventType.value) snapshot in
let numberOfusers = snapshot.childrenCount
print(snapshot.childrenCount)
"userInfo" :
"baxUvpqL4cMf9p6mqv9czB0FrNN2" :
"dateOfEvent" : "31.10.2021",
"guests" :
"-MRK4bbtD4yL4EIsvMnF" :
"age" : "child",
"attending" : "attending"
...
这里会有更多的自动 ID,所以我需要它,我需要计算所有值“参加”的自动 ID。
【问题讨论】:
您能否编辑您的问题以在userInfo
显示JSON(作为文本,请不要截图)?您可以通过单击Firebase Database console 上溢出菜单 (⠇) 中的“导出 JSON”链接来获取此信息。
"userInfo" : "baxUvpqL4cMf9p6mqv9czB0FrNN2" : "dateOfEvent" : "31.10.2021", "guests" : "-MRK4bbtD4yL4EIsvMnF" : "age" : "child", "attending " : "参加" @FrankvanPuffelen
【参考方案1】:
获取标记为出席的客人人数的最简单方法是use a query:
let ref = Database.database().reference().child("userInfo").child(uid!)
let query = ref.child("guests").queryOrdered(byChild: "attending").queryEqual(toValue: "attending")
query.observe(.value) snapshot in
let numberOfusers = snapshot.childrenCount
print(snapshot.childrenCount)
【讨论】:
以上是关于如何从 Firebase 数据库中的 autoID 获取价值 - Swift的主要内容,如果未能解决你的问题,请参考以下文章
Firebase 实时规则如何检查具有 AutoID 的节点是不是包含正确的数据