以下是我的Firebase详细信息:
会话
-KcNOYKbVwSZGqyoD99W
-KcNOeYu1iX6VqVM5tIf
- 的 KcNPLZdLBva3f2SqspR
-KcNQlp9H8hxAsS4otxz
-KcOOtlBsMqGhvyrnHS
当我插入数据时,它会从下面添加到数据库中。我需要在KcNPLZdLBva3f2SqspR
节点下面添加数据。
通常,我使用以下代码添加数据:
final DatabaseReference imageref = FirebaseDatabase.getInstance().getReference().child("Message").child(data_contact.get(position).getChatadd()).child("Conversations");
String mydate = java.text.DateFormat.getDateTimeInstance().format(Calendar.getInstance().getTime());
Map<String, Object> map = new HashMap<String, Object>();
final String temp_key = imageref.push().getKey();
imageref.updateChildren(map);
DatabaseReference message_roottemp = imageref.child(temp_key);
Map<String, Object> map2 = new HashMap<String, Object>();
map2.put("Text", "Ouch..");
map2.put("sender_name", data_contact.get(position).getCurrent_user());
map2.put("sender_photo", "");
map2.put("timestamp", mydate);
map2.put("message_status", "Saved");
map2.put("msg_type", "POKE");
message_roottemp.updateChildren(map2);
在所需节点下添加数据需要进行哪些修改?
我的用例是:在KcNPLZdLBva3f2SqspR
节点说,图像URL就在那里。用户对此图像发表评论。所以我需要在这个节点下面发布数据,就像我将数据加载到RecyclerView中一样。图像和评论一个接一个地显示出来。
答案 0 :(得分:0)
我不知道在下面添加另一个位置,因为我看到数据是按照排序方式添加的(我不确定所以请确认)。
但我可以为你提供更好的解决方案。
您可能应该在数据库中为每个图像的属性创建一个子属性。
例如:我遇到了同样的情况。所以我创建了一个条目 对于我的数据库中具有随机名称的每个新图像。然后 从数据库中获取该名称会上传相同的图像 您的firebase存储中的名称。
你有它。无论您为图像上传了多少条评论,都可以随时从数据库中获取该条目,以保留所有图像属性。
我知道这不是你的问题,但它是你问题的解决方案。希望它有所帮助。