Я получил доступ к дочерним узлам этого пользователя.Но каждый раз, когда я пытаюсь обновить оценку и анализ одного ребенка, это повлияет на других, в результате чего у другого ребенка будет то же значение.
![This is the firebase console](https://i.stack.imgur.com/ZE1gt.png)
Это код, который я использую для доступа к детям в разделе «Пользователи» для оценки
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
Query query = rootRef.child("Users").orderByChild("username");
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
Map<String, Object> map = (Map<String, Object>) ds.getValue();
map.put("score", total);
ds.getRef().updateChildren(map);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Log.d("TAG", databaseError.getMessage());
}
};
query.addListenerForSingleValueEvent(valueEventListener);
Это код, который я использую для доступа к детям в разделе «Пользователи» для анализа
DatabaseReference dr = FirebaseDatabase.getInstance().getReference();
Query q = dr.child("Users").orderByChild("username");
ValueEventListener vel = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
Map<String, Object> map = (Map<String, Object>) ds.getValue();
map.put("analysis", sev);
ds.getRef().updateChildren(map);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Log.d("TAG", databaseError.getMessage());
}
};
q.addListenerForSingleValueEvent(vel);
}
Я должен обновить Анализ и Оценка, не затрагивая других детей