Вставить значения HashMap в Firebase под тем же узлом - PullRequest
0 голосов
/ 18 января 2019

Я пытаюсь перебрать HashMap и ввести данные в один и тот же узел, однако код загружает данные в новые узлы.

    // Iterate Through HashMap
    for (Map.Entry<String, String> entry : namePhoneMap.entrySet()) {

        String key = entry.getKey();
        String value = entry.getValue();

        fbDatabaseRefPhone.push().child("name").setValue(value);
        fbDatabaseRefPhone.push().child("phone_number").setValue(key);


    }

По сути, я хочу, чтобы имя и номер телефона были загружены в один и тот же случайный узел. Однако это толкает их в разные узлы.

1 Ответ

0 голосов
/ 18 января 2019

push() всегда генерирует новый случайный ключ каждый раз, когда вы его вызываете. Просто вызовите его один раз и предоставьте один набор данных для одновременной записи в новую DatabaseReference, которую он возвращает:

HashMap<String, Object> data = new HashMap<>();
data.put("name", value)
data.put("phone_number", key);
DatabaseReference child = fbDatabaseRefPhone.push();
child.setValue(data);
...