Firebase 数据库查询错误
Error with Firebase database querying
我只想在嵌入选项卡栏控制器的 table 视图控制器中查询 Firebase 数据库。
我的数据结构是这样的:
messages
KO1222_mhm2U6dSC6Kp
senderDisplayName: "someRandomNameOrEmail"
senderId: "LfCqpbberPb5doQuFrGHpQDfJSV2"
text: "ExampleMessage"
KO12AzTeX_CN8fWDXtI
senderDisplayName: "someRandomNameOrEmail2"
senderId: "7S4vEd2IJleIFhuU59aA3G7QETI3"
text: "To freedom"
KO12PD47C7NkhAZhW7z
senderDisplayName: "someRandomNameOrEmail"
senderId: "LfCqpbberPb5doQuFrGHpQDfJSV2"
text: "Wow"
etc etc
我试过了:
ref.child("messages").observeEventType(.Value, withBlock: { snapshot in
print(snapshot.childrenCount) // I got the expected number of items
let enumerator = snapshot.children
while let rest = enumerator.nextObject() as? FIRDataSnapshot {
print(rest.value)
}
})
in viewDidLoad
但这会在 table 视图控制器中产生错误。它在嵌入在同一选项卡栏控制器中的普通视图控制器中工作。我收到一个错误
fatal error: unexpectedly found nil while unwrapping an Optional value
有人可以帮助我了解如何以这种方式查询 Firebase 数据库吗? ref
不是零;它打印为 https://my_app_name.firebaseio.com/messages
.
所以错误实际上与 class 顶部声明的 var userIds: [String]!
有关。由于它是 nil
在数据库查询之前它给出了一个错误。数据库查询的实际代码没问题。
我只想在嵌入选项卡栏控制器的 table 视图控制器中查询 Firebase 数据库。
我的数据结构是这样的:
messages
KO1222_mhm2U6dSC6Kp
senderDisplayName: "someRandomNameOrEmail"
senderId: "LfCqpbberPb5doQuFrGHpQDfJSV2"
text: "ExampleMessage"
KO12AzTeX_CN8fWDXtI
senderDisplayName: "someRandomNameOrEmail2"
senderId: "7S4vEd2IJleIFhuU59aA3G7QETI3"
text: "To freedom"
KO12PD47C7NkhAZhW7z
senderDisplayName: "someRandomNameOrEmail"
senderId: "LfCqpbberPb5doQuFrGHpQDfJSV2"
text: "Wow"
etc etc
我试过了:
ref.child("messages").observeEventType(.Value, withBlock: { snapshot in
print(snapshot.childrenCount) // I got the expected number of items
let enumerator = snapshot.children
while let rest = enumerator.nextObject() as? FIRDataSnapshot {
print(rest.value)
}
})
in viewDidLoad
但这会在 table 视图控制器中产生错误。它在嵌入在同一选项卡栏控制器中的普通视图控制器中工作。我收到一个错误
fatal error: unexpectedly found nil while unwrapping an Optional value
有人可以帮助我了解如何以这种方式查询 Firebase 数据库吗? ref
不是零;它打印为 https://my_app_name.firebaseio.com/messages
.
所以错误实际上与 class 顶部声明的 var userIds: [String]!
有关。由于它是 nil
在数据库查询之前它给出了一个错误。数据库查询的实际代码没问题。