【发布时间】:2016-02-10 12:43:59
【问题描述】:
我有一个要使用 Swift 从 Firebase 检索的数据列表。
我尝试使用.Value 获取数据,Firebase 返回一个字典,其中包含每个项目的 ID 以及每个 ID 的相关信息。
我调用的端点是/ideas。
let ideasRef = firebase.childByAppendingPath(IdeaStructure.PATH_IDEAS)
ideasRef.observeEventOfType(.Value, withBlock: { snapshot in
print(snapshot.value)
}, withCancelBlock: { error in
print(error.description)
})
为了优化这个,我改成了.ChildAdded。在这种情况下,我只得到没有关联 ID 的单个项目。
是否也可以使用.ChildAdded 获取每个项目的 ID?
如果没有,如何将 Firebase 生成的 ID 保存到每个项目中?目前我正在以这种方式保存每个项目:
let ideasRef = firebase.childByAppendingPath(IdeaStructure.PATH_IDEAS).childByAutoId()
let idea = [
IdeaStructure.FIELD_MESSAGE: message,
IdeaStructure.FIELD_CREATOR_ID: userId,
IdeaStructure.FIELD_CREATION_DATE: NSDate().formattedISO8601
]
ideasRef.setValue(idea)
【问题讨论】: