我想将结构对象发送到firebase。
struct commentsData{
var commentsText:String
var commentTime:String
var commentDay:String
var commentMonth:String
var commentYear:String
}
var data = commentsData(commentsText: "", commentTime: "", commentDay: "", commentMonth: "", commentYear: "")
Database.database().reference().child("CommentData").child(commentId).setValue(data){
(error:Error?, ref:DatabaseReference) in
}
要解决这个问题我应该做些什么。
答案 0 :(得分:2)
我认为您不能像那样直接添加对象,而是必须将数据作为字典传递。因此,您可以在结构内添加以下代码,
var dict:[String:String] {
return [
"commentsText": commentsText,
"commentTime": commentTime,
"commentDay": commentDay,
"commentMonth": commentMonth,
"commentYear": commentYear
]
}
然后
var data = commentsData(commentsText: "1", commentTime: "1", commentDay: "1", commentMonth: "1", commentYear: "1")
Database.database().reference().child("CommentData").child(commentId).setValue(data.dict) { (error, ref) in
// continue here
}
答案 1 :(得分:1)
您需要编写不带类型的补全
var data:[String:Any] = ["key":"value"] //
FIRDatabase.database().reference().child("CommentData").child(commentId).setValue(data) { (err, ref) in
}