swift - 在 Firebase 中仅检索没有键的值

标签 swift firebase firebase-realtime-database

所以我试图从我的 firebase 数据库中仅检索子项的“第二个”值。 结构如下所示:

The database Structure

我得到的输出是这样的:

What my output is

然而我真正想要的只是:

someURL.com

理想情况下,即使没有 https 或 http(我可能需要一个 if 来检查,因为事先并不知道所有这些)。我想有 2 个选项,要么在 Swift 中解开字符串,要么(我希望的)只是检索实际值而不带括号和开头的“url”。我在这里找不到类似的问题。

我的检索代码:

dataSource?.populateCellWithBlock { (cell: UITableViewCell, obj: NSObject) -> Void in
        let snap = obj as! FIRDataSnapshot


        let childString = snap.value as! [String : AnyObject]

        cell.textLabel?.text = String(childString)
    }

最佳答案

试试这个

dataSource?.populateCellWithBlock { (cell: UITableViewCell, obj: NSObject) -> Void in
        let snap = obj as! FIRDataSnapshot


        let childString = snap.value as! [String : AnyObject]

        if let url = childString["url"] as? String {
            cell.textLabel?.text = url
        } else {
            print("No value for url")
        }
    }

您正在使用的 childString 变量是一个包含键值的字典。您需要获取键“url”的值。

关于swift - 在 Firebase 中仅检索没有键的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38870933/

相关文章:

string - Swift String 索引 advanceBy 不能采用 int32

javascript - 如何将对象插入 Firebase Forge? - AngularFire 0.8.0 - Thinkster - 第 7 章

ios - 在显示 tableview 之前尝试完成 Firebase 存储下载的问题

javascript - 如何在 Firebase 实时数据库中过滤和检索嵌套子项?

swift - 将具有透明度的 UIView(来自 xib)添加到 SceneKit

ios - UITableView 中嵌入的 UICollectionView 中的 UICollectionViewCell 未按预期显示

ios - Swift - 为聊天应用构建 Firebase 数据

javascript - 如何从选择下拉列表中的 firebase observable 设置 Angular 2 ngModel

ios - 如何在另一个函数中执行任务并随着任务的进行从那里更新 UI?

java - 我正在尝试使用 firebase 制作登录页面和注册页面。我想使用 firebase 实时数据库来存储用户名和电子邮件