2016-08-10 30 views
0

所以我试图只从我的firebase数据库中检索一个孩子的“第二”值。 的结构是这样的:仅检索Firebase中没有密钥的值

The database Structure

什么我得到作为输出是这样的:

What my output is

但是什么其实我想要的只是:

someURL.com

理想情况下,即使没有https或http(我可能需要一个如果检查,因为它并不是所有的人都知道)。我想有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) 
    } 

回答

2

您尝试使用此

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”的值。

+0

它给了我一个错误,那个childString没有valueForKey成员。类型'[String:AnyObject]'的值没有成员'valueForKey' – ffritz

+0

@FelixF。我只是编辑了答案。现在试试 – LIH