如果您有MessageItem/MessageData對象,則可以通過修改對象結構來始終爲其添加更多屬性。爲了增加timestamp
到現有的數據,你可以在你的火力地堡/數據庫主機直接添加它(這是一個手動的方式來做到這一點,或者只是做在像這樣的代碼)
let messageItem = MessageItem(text: text,
senderId: self.user.email,
senderDisplayName: false,
mediaType: "",
timestamp: "")
let messageItemRef = self.ref.child("Message")
messageItemRef.setValue(messageItem.toAnyObject())
編輯: 原來的問題沒有一個MessageItem對象,以便讓我們把一個在一起,使這個答案的工作:
在你的viewController類(或任何頂級類),我們需要實現一個MessageItem類對象這樣
class MessageItem {
var text = ""
var senderId = ""
var senderDisplayName = false
var mediaType = ""
var timestamp = ""
init(text: String, senderId: String, senderDisplayName: Bool, mediaType: String, timestamp: String) {
self.text = text
self.senderId = senderId
self.senderDisplayName = senderDisplayName
self.mediaType = mediaType
self.timestamp = timestamp
}
func toAnyObject() -> Any {
return [
"text": text,
"senderId": senderId,
"senderDisplayName": senderDisplayName,
"mediaType": mediaType,
"timestamp": timestamp
]
}
}
是否要更新現有的節點?或只是在新的? –
Firebase中沒有表格,只有節點(父節點和子節點)。如果你想寫一個新的節點,它會是childNode.setValue(「timestamp」)。 childNode將在代碼中定義爲parentNode.child(「child_node」),或者在您的情況下爲messagesSentRef.child(「Messages」)。childByAutoId()。setValue(「timestamp」) – Jay