java - 如何更新firebase数据库特定键中的值

标签 java android firebase firebase-realtime-database

如何从 android 更新 firebase 数据库中现有键中的值。就我而言,我希望用户更新 key 投票

enter image description here

                        final long z=0;
                        Map<String,Object> taskMap = new HashMap<String,Object>();
                        taskMap.put("Votes", z);

                        FirebaseDatabase.getInstance().getReference()
                                .child("project_image").child(projectDate)
                                .child("Votes")
                                .updateChildren(taskMap);

我尝试了上面的代码,但它添加了另一个节点

enter image description here

        FirebaseDatabase.getInstance().getReference()
       .child("project_image")
       .child(formattedDate)
       .push().setValue(dataMap);

以上代码用于第一次插入数据

如何执行此任务

最佳答案

您还需要访问 key :

    final long z=0;
 Map<String,Object> taskMap = new HashMap<String,Object>();
 taskMap.put("Votes", z);

FirebaseDatabase.getInstance().getReference().child("project_image")
.child(projectDate).child("-M3zLjPHM_ndBfBDLV9C")
.child("Votes")
.updateChildren(taskMap);
<小时/>

获取 key :

DatabaseReference reference = FirebaseDatabase.getInstance().getReference();

reference.child("project_image").child(projectDate).addListenerForSingleValueEvent(new ValueEventListener() {
 @Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot datas: dataSnapshot.getChildren()){
   String key = datas.getKey();

   final long z=0;
   Map<String,Object> taskMap = new HashMap<String,Object>();
 taskMap.put("Votes", z);
   FirebaseDatabase.getInstance().getReference().child("project_image")
.child(projectDate).child(key)
.child("Votes")
.updateChildren(taskMap);
    }
 }
   @Override
public void onCancelled(DatabaseError databaseError) {
    throw databaseError.toException();
  }
 });

关于java - 如何更新firebase数据库特定键中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61009792/

相关文章:

java - JBOSS类加载问题

android - 在 Android 时间选择器小部件中删除 AM/PM

firebase - 架构armv7的 undefined symbol : "_OBJC_CLASS_$_FIRApp"

java - 将数据临时存储在多 Activity 应用程序中,直到该应用程序停止为止?

java - 从 request.getParameter() 获取输入类型 ="image"值

java - 如何在 NetBeans IDE 7.2.1 中创建 Java 桌面应用程序?

Android 如何设置 RemoteView 的权重?

android - 如何更改 TextInputLayout 中的提示文本大小

android - 如何在 Firebase 中检查写入任务是否成功

Firebase pop() 与push() 相反?