java - Android/Firebase 创建一个文件夹作为唯一文件夹的子文件夹,两者同时创建
问题描述
问题:我想在帖子中添加照片,它可以部分工作,但是“图像”文件夹是单独创建的,而不是在一个以绿色标记的唯一文件夹中
databaseReference = FirebaseDatabase.getInstance().reference.child("posts")
private fun SendLink(url: String) {
val hashMap: HashMap<String, String> = HashMap()
hashMap["link"] = url
databaseReference!!.child("images").push().setValue(hashMap).addOnCompleteListener {
progressDialog!!.dismiss()
choosenImages!!.text = "Succesfully added images."
addImagesBT.visibility = View.GONE
ImageList.clear()
}
}
问题:如何移动/创建“图像”文件夹作为绿色下划线文件夹的子文件夹?
解决方案
在实时数据库中,实际上没有任何“文件夹”。只有节点可以包含子节点。没有在节点之间“移动”数据的操作。您可以做的是从源节点读取数据,将其写入目标节点,然后删除原始节点。
如果您创建的节点显示在错误的位置,这意味着您可能应该只更改它正在写入的位置。现在,您的代码正在向“图像”下随机生成的节点添加新的子节点。如果您想改为写入“帖子”,只需更改您推送数据的节点的名称。请注意如何创建调用时使用的 Reference 对象push()
- 该引用将是根节点,新的随机生成的节点名称将被写入其下。
推荐阅读
- excel - 如果数据在 dd:hh:mm:ss 中,有没有办法获得平均时间?
- c++ - 通过右值修改对象值
- django - 如何准备 django 应用程序以部署在服务器上?
- javascript - 如何在keydown事件后突出显示文本?
- pandas - 根据另一列 pandas 计算元素重叠
- qt - 在 qtextdocument 表格边框没有渲染,为什么?
- clojure - 使用 Spectre 从深度嵌套的数据结构中修剪不必要的条目
- arrays - 如何在 vue.js 中使用 v-bind 将 pic 从数组动态添加到 src?
- css - 在 Internet Explorer 中工作时,CSS 代码在 Google Chrome 中不起作用
- r - 使用 purrr 从 combn 评估组合时遇到问题