Max*_*tge 3 ios firebase swift firebase-realtime-database swift3
我已经多次看到这个问题,但似乎无法弄清楚如何使用这些答案来解决我的代码中的问题.这是我正在使用的当前代码:
if let postContent = postAlert.textFields?.first?.text {
let post = Post(content: postContent, addedByUser: "Max Kortge")
let postRef = self.dbRef.child(postContent.lowercased())
postRef.setValue(post.toAnyObject()) //error here
}
Run Code Online (Sandbox Code Playgroud)
我认为控制台中的错误意味着我在这里评论'错误'的行.
toAnyObject的方法如下:
func toAnyObject() -> Any {
return ["content":content, "addedByUser":addedByUser] as Any
}
Run Code Online (Sandbox Code Playgroud)
完整控制台错误如下:
由于未捕获的异常'InvalidFirebaseData'而终止应用程序,原因:'(setValue :)无法在内容中存储_SwiftValue类型的对象.只能存储NSNumber,NSString,NSDictionary和NSArray类型的对象.
使用版本3.12.0我得到了无法存储类型_SwiftValue错误的对象,即使我确定我发送了NSString而不是swift字符串.我做错了是完成块的格式.我改变了这个:
ref.child("data").setValue("str") {
print("done")
}
Run Code Online (Sandbox Code Playgroud)
对此:
ref.child("data").setValue("str") { err, ref in
print("done")
}
Run Code Online (Sandbox Code Playgroud)
必须是一个错误,我希望在未来的firebase版本中有更好的错误消息.
| 归档时间: |
|
| 查看次数: |
2823 次 |
| 最近记录: |