如何从 FireBase 访问嵌套的 NSDictionary 数据
How to access nested NSDictionary data from FireBase
我是 运行 一个 Xcode 8 / Swift 3 程序,从 firebase 数据库中提取数据。我正在将 "Brands" 添加到 "Store" 详细信息中。
数据如下:
我可以使用以下代码访问所有 "root" 数据,例如位置和道路。
let storeName = value["StoreName"] as! String
let subThouroughfare = value["subThouroughfare"] as! String
let thouroughfare = value["Thouroughfare"] as! String
let administrativeArea = value["administrativeArea"] as! String
我不确定如何访问嵌入数据,最终会有不止一个 "Brand" 具有 4 个值的键结构如下:
$StoreKey:
brands:
$brandKey1:
Value1: String
Value2: String
Value3: String
Value4: String
$brandKey2:
Value1: String
etc...
到目前为止,我有如下结构设置,我需要从 table 的品牌部分查询品牌:
var ProductList = [storeStruct]()
struct BrandStruct{
let BrandKey: String
let BrandName: String
let Value1: String
let Value2: String
let Value3: String
let Value4: String
}
获取该数据并将其构造成可用数组以便我可以填充 table 的最佳方法是什么?或者我应该继续尝试查询 Firebase 直到我得到可以使用的东西吗?
感谢您的帮助!
首先获取 let brands = value["brands"] as! NSDictionary
,与您已经在做的完全平行。现在要求brands.allKeys
;那是品牌键的数组。然后,对于每个键,您可以请求 brands[thisKey] as! NSDictionary
,您将取回包含键入 "Val1"
、"Val2"
、"Val3"
和 [=16 的四个值的字典=]. (同样,如果这些键的名称和数量可能不同,allKeys
会告诉您它们是什么。)
我是 运行 一个 Xcode 8 / Swift 3 程序,从 firebase 数据库中提取数据。我正在将 "Brands" 添加到 "Store" 详细信息中。
数据如下:
我可以使用以下代码访问所有 "root" 数据,例如位置和道路。
let storeName = value["StoreName"] as! String
let subThouroughfare = value["subThouroughfare"] as! String
let thouroughfare = value["Thouroughfare"] as! String
let administrativeArea = value["administrativeArea"] as! String
我不确定如何访问嵌入数据,最终会有不止一个 "Brand" 具有 4 个值的键结构如下:
$StoreKey:
brands:
$brandKey1:
Value1: String
Value2: String
Value3: String
Value4: String
$brandKey2:
Value1: String
etc...
到目前为止,我有如下结构设置,我需要从 table 的品牌部分查询品牌:
var ProductList = [storeStruct]()
struct BrandStruct{
let BrandKey: String
let BrandName: String
let Value1: String
let Value2: String
let Value3: String
let Value4: String
}
获取该数据并将其构造成可用数组以便我可以填充 table 的最佳方法是什么?或者我应该继续尝试查询 Firebase 直到我得到可以使用的东西吗?
感谢您的帮助!
首先获取 let brands = value["brands"] as! NSDictionary
,与您已经在做的完全平行。现在要求brands.allKeys
;那是品牌键的数组。然后,对于每个键,您可以请求 brands[thisKey] as! NSDictionary
,您将取回包含键入 "Val1"
、"Val2"
、"Val3"
和 [=16 的四个值的字典=]. (同样,如果这些键的名称和数量可能不同,allKeys
会告诉您它们是什么。)