使用 Swift 迭代 Firebase 中的嵌套快照子项

2023-12-07

我正在尝试循环遍历 Firebase 数据库中的子级以检索嵌套键。

我的数据库结构如下:

"Users" : {
 "Username" : {
  "Favorites" : {
    "Location" : {
      "Latitude" : 123,
      "LocationName" : "San Francisco",
      "Longitude" : 123
    },
    "Location2" : {
      "Latitude" : 123,
      "LocationName" : "London",
      "Longitude" : 123
    }
  }
 }
}

我正在尝试打印出所有“LocationName”键,并且能够打印该键的一个实例,但无法循环并打印该键的所有实例。

我不确定我的 for 循环哪里出错了?

我正在使用的代码如下。

    FIRApp.configure()

    let databaseRef = FIRDatabase.database().reference().child("Users").child("Username").child("Favorites")


    let databaseHandle = databaseRef.observe(.value, with: { (snapshot) in
        for item in snapshot.children {

            if let dbLocation = snapshot.childSnapshot(forPath: "LocationName") as? String {

                    print (dbLocation)
            }

            print(item)

        }

    })

我对 Swift 很陌生,甚至对 Firebase 也很陌生,所以任何帮助将不胜感激!


你的代码中的问题是snapshot指的是收藏夹节点——而不是寻找地点名称在那里,你应该在每个Location子节点。因此你的循环应该是这样的:

let databaseHandle = databaseRef.observe(.value, with: { snapshot in
    for child in snapshot.children {
        let childSnapshot = snapshot.childSnapshotForPath(child.key)
        if let dbLocation = childSnapshot.value["LocationName"] as? String {
            print(dbLocation)
        }
    }
})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Swift 迭代 Firebase 中的嵌套快照子项 的相关文章

随机推荐

  • 仅从 txt 文件中读取整数并将每个找到的值相加

    我正在尝试读取包含整数字符串的 txt 文件 我希望能够从该文件中获取整数并将每个值相加以创建总计 我已经成功地读取了该文件 并且能够识别整数和非整数 我该如何将整数相加呢 public void goalCount throws File
  • 智能感知和代码建议在 Visual Studio 2012 Ultimate RC 中不起作用

    I have just downloaded and installed Visual Studio 2012 Ultimate RC but I m having an issue with the intellisense it doe
  • 无法找到软件包 google-drive-ocamlfuse ,突​​然停止工作

    我最近一直在使用 colab 直到现在我使用 google drive ocamlfuse 将我的项目链接到我的驱动器 但它无法加载包 apt get update qq 2 gt 1 gt dev null apt get install
  • 在 SQL Server 中使用 childs 创建 JSON(Web 树的结构)

    请帮助我创建一个查询 或建议阅读哪些内容 我在 SQL Server 表中有一个树形结构 当所有后代节点都成为嵌套 JSON 对象时 我需要将表数据转换为具有子级的 Web 树的 JSON 格式 我有这个数据表 DROP TABLE IF
  • 是否存在针对特殊字符的 PowerShell 转义功能

    As with in the self answer I like to be able to remove control characters from text to get a single line string Does the
  • 获取鼠标指针下方的窗口句柄,同时忽略半透明窗口

    我创建了一个半透明表单 60 不透明度 黑色背景色 我的应用程序在整个屏幕上启动该表单并最大化 基本上 它在整个桌面上投射灰色 当用户将鼠标悬停在桌面上的窗口上时 我想获取该窗口的句柄 hWnd 对我来说最简单的方法是 暂时隐藏我的表单 或
  • Lambda 捕获实例变量

    在一次令人沮丧的调试会话后阅读 JLS 我发现 lambda 会捕获value有效最终局部变量 但如果您引用实例变量 它会捕获对该变量的引用 这对多线程代码有严重影响 例如 以下是从一个更大的程序中提取的 MCVE public class
  • wpf属性网格

    我的 WPF 应用程序需要一个 propertyGrid 经过大量搜索后我发现this当我将 propertyGrid 添加到表单并运行它时 我已经添加了程序集 exe 文件 但在表单中看不到它 xaml代码
  • GMail API超级管理员通过API访问其他用户帐户?

    我的机构目前自 2009 年初以来一直在运行 Google Apps for Education 我负责创建 删除 修改学生电子邮件帐户等 我已将所有现有的 C 应用程序从 GData 转换为新的 Admin SDK 生活很美好 上周 其中
  • EF 代码优先 - 配置一对零或一关系,无需共享 PK/FK

    我正在尝试在两个实体之间建立一对零或一的关系 并且我希望依赖实体仍包含其自己的 Indentity 列 而不是共享密钥 我想尽可能遵循约定 而不是显式声明任何不需要显式声明的内容 因此 不不必要数据注释或 Fluent api 子句 实体
  • .net JSON 日期格式

    作为 net 服务的响应 我得到以下日期格式 日期 1233323754523 0100 1233323754523 是时间戳格式的日期 但我不知道 0100 是什么意思以及如何从java代码生成它 Thanks 我假设时间戳采用 UTC
  • React Native无法连接到Android中的SSE

    我正在使用该包 https www npmjs com package react native sse 即使我从文档中复制粘贴代码 我也无法设法从 android 中的服务器接收事件 import EventSource from rea
  • 在谷歌地图中设置城市周围的边界

    我正在寻找一种使用 JavaScript 在 Google 地图 API V3 中设置特定城市 城镇周围边界的方法 API 中是否支持这种类型的事情 基本上 我不希望我的用户能够比城市更远地平移地图 包括乡村地区而不仅仅是城市范围 那么您想
  • 用 Java 下载文件。多线程,这有效吗?

    首先 每个人都需要知道我对 Java 编码还比较陌生 更准确地说 我对面向对象编程完全陌生 对于这个问题 我正在尝试创建一个下载类来更新进度条以显示其进度 可能还有我决定将来更新的其他内容 目前的问题是 在我看来 这不应该起作用 我可以在
  • 如何检查用户是否在 Firebase 和 Express/Node.js 中经过身份验证?

    如果我有一个页面只能由经过身份验证的用户访问 我如何检查用户是否经过身份验证 我尝试使用 firebase auth currentUser null 但我收到一条错误消息 TypeError firebase auth is not a
  • Pyplot 在缩放时保持文本大小

    我想在 pyplot 图中包含一些文本 并且能够在不改变比例的情况下放大它 请参阅下面的情节示例 我希望发生什么以及实际发生了什么 重现错误的代码 import matplotlib pyplot as plt plt plot 0 0 1
  • 如何从clickhouse中的json中提取json?

    我的基地有一个 json a 1 b 2 c d 3 e str 1 d 4 e str 2 我需要获取每个键的所有唯一值 但在提取键 d 和键 e 的值时遇到一些问题 Using SELECT DISTINCT JSONExtractRa
  • 如何改变gitbook的代码填充效果?

    这是stackoverflow的markdown代码效果 Code from stackoverflow Nearly no extra space at the beginning And this is the markdown cod
  • php $_SESSION 变量随机消失和重新出现

    Preface 这是一个 发展 之前的一个问题我的 他的答案最终没有解决我的问题 但是通过尝试所有建议并尝试其他东西 我发现真正的问题是别的东西 所以我在这里重新表述我的问题 我有一个登录页面 系统 多年来一直正常工作 让用户保持登录状态
  • 使用 Swift 迭代 Firebase 中的嵌套快照子项

    我正在尝试循环遍历 Firebase 数据库中的子级以检索嵌套键 我的数据库结构如下 Users Username Favorites Location Latitude 123 LocationName San Francisco Lon