Получение и изменение данных Firebase

Являюсь новичком в создании приложений на Android и использованием Firebase. Буду благодарен за любую помощь.

Имеется вот такая структура БД. структура Необходимо найти конкретный узел по заданному значению id и в нем же поменять значение другого поля. Я пробовал этот код, но он добавляет поля на одном уровне со всеми узлами.

        Query query = myRef.orderByChild("id").equalTo(id);
        query.addValueEventListener(new ValueEventListener() {
           @Override
           public void onDataChange(@NonNull DataSnapshot snapshot) {
               snapshot.getRef().child("isRead").setValue(true);
           }
            @Override
            public void onCancelled(@NonNull DatabaseError error) {

            }

    } );

Ответы (1 шт):

Автор решения: Анастасия

Согласно официальной документации, это можно сделать вот так:

DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference();
mDatabase.child(id).child("isRead").setValue(true);

где id - это, собственно, переменная с нужным Вам идентификатором.

Внутри mDatabase.child(id) Вы можете менять значения любого child. Метод setValue перезаписывает данные только в указанном месте.

→ Ссылка