0
我在Firebase中設置了一些數據對象,我試圖在Wwift中檢索它們並將它們顯示在表格視圖中,但我無法獲得任何結果。在Swift中從Firebase中檢索數據的問題
我試過了嗎?
var crystalsList = [Crystal]()
override func viewDidLoad() {
super.viewDidLoad()
print(crystalsList.count)
crystalRef = Database.database().reference().child("crystalList")
crystalRef?.observe(DataEventType.value, with: { (snapshot) in
if snapshot.childrenCount > 0 {
self.crystalsList.removeAll()
for myCrystal in snapshot.children.allObjects as! [DataSnapshot]{
let crystalObject = myCrystal.value as? [String : AnyObject]
let name = crystalObject?["name"]
let colors = crystalObject?["colors"]
let mainColor = crystalObject?["mainColor"]
let region = crystalObject?["region"]
let rarity = crystalObject?["rarity"]
let additionalInfo = crystalObject?["additionalInfo"]
let primaryUse = crystalObject?["primaryUse"]
let isNew = crystalObject?["isNew"]
let theCrystal = Crystal(name: (name as! String?)!, rarity: (rarity as! String?)!, region: (region as! String?)!, color: (colors as! String?)!, mainColor: (mainColor as! String?)!, isNewListing: (isNew as! Bool), additionalInfo: (additionalInfo as! String?)!, primaryUse: (primaryUse as! String?)!)
self.crystalsList.append(theCrystal)
}
self.crystalTable.reloadData()
}
})
}
此代碼不足以排除故障。顯示數據庫(相關部分)的JSON(作爲文本,沒有屏幕截圖)。單擊[Firebase數據庫控制檯](https://console.firebase.google.com/)中的「導出JSON」項目/ _ /數據庫/數據)。在調試器中運行代碼並在關鍵線上設置斷點。它進入你的回調塊嗎?最後:你有權限讀取數據:https://stackoverflow.com/documentation/firebase/5548/how-do-i-listen-for-errors-when-accessing-the-database/24788/detect-errors -when-reading-data-on-ios#t = 201707020102526875005 –
感謝您的回覆,我翻閱了您提供的文章,結果顯示我沒有讀取數據的權限,所以我繼續修復我現在可以打印這些數據。 – Geniouse
很高興聽到您根據該鏈接對它進行了排序。我不知道如何解決這個問題,所以投票結束,作爲題外話。 –