簡體   English   中英

Firebase 更新嵌套數據而不刪除

[英]Firebase updating nested data without deleting

出於某種原因,在我的數據庫上調用updateChildren會刪除當前位於那里的所有數據。 JSON 樹看起來像這樣

{
  "user1" : {
    "messages" : {
      "-message1" : true
    },
    "userId" : "value"
  }
}

我試圖在消息 1 下插入消息 2,但是,它所做的只是用消息 2替換消息 1

fun addToCurrentUser() {
    val user = Firebase.auth.currentUser
    val id = user?.uid
    val map: MutableMap<String, Any> = HashMap()
    map.put(message.getId(), true)
    root.child("users/" + id + "/messages/").updateChildren(map)
}

如果你想在已知位置添加新數據,你可以直接在路徑上使用setValue() ,忽略路徑中的任何其他內容。

root
    .child("users")
    .child(id)
    .child("messages")
    .child(message.getId())
    .seValue(true)

如果您以任何節點為目標進行更新,該位置下的所有內容都將被替換,因此最好盡可能深入地定位以進行所需的更改。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM