Как сохранить данные в firebase родительский ключ не дефалют - PullRequest
0 голосов
/ 03 июня 2019

Теперь я слежу за учебником по Android с помощью Firebase от YouTube когда я сохраняю данные в формате данных json, родительский ключ по умолчанию выглядит следующим образом 1

1 : enter image description here

Я хочу сохранить данные не по умолчанию, ключ auto

Я хочу сохранить формат данных, подобный этому

enter image description here

Когда я сохраняю данные вот так

//regi button
    mAdd_mypet.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

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

            String petid = reference.push().getKey();

            RadioGroup rg = (RadioGroup)findViewById(R.id.genderGroup);
            RadioButton seletedRdo = (RadioButton)findViewById(rg.getCheckedRadioButtonId());
            final String selectedValue = seletedRdo.getText().toString();

            HashMap<String, Object> hashMap = new HashMap<>();
            hashMap.put("petname", mPetName.getText().toString().trim());
            hashMap.put("petbreed", mPetBreed.getText().toString().trim());
            hashMap.put("petweight", mPetWeight.getText().toString());
            hashMap.put("birthday", mDisplayDate.getText().toString());
            hashMap.put("intro", mIntro.getText().toString());
            hashMap.put("gender", selectedValue);
            hashMap.put("petimage", myUrl);



            reference.child(petid).setValue(hashMap);

            startActivity(new Intent(MyPetRegActivity.this, MyPetListActivity.class));
            finish();


        }
    });

но родительский ключ данных сохранения результата - auto

как я могу сохранить данные явно, не сделать по умолчанию не нравится '2okCgbdTqlVgk6oDqPi'

я хочу сделать так -> 'firebase_01'

прости мой дурак английский ...

1 Ответ

2 голосов
/ 03 июня 2019

Эта строка String petid = reference.push().getKey();

Измените его на что-то вроде String petid = 'firebase_01'

Когда вы используете reference.child(petid).setValue(hashMap); метод child для установки идентификатора, вы можете прийти со своим собственным или попросить firebase сгенерировать его (что вы делаете в своем проекте), больше информации здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...