как удалить автоматически сгенерированный элемент из метода pu sh из базы данных Firebase в реальном времени - PullRequest
0 голосов
/ 07 марта 2020

Я новичок в Firebase и столкнулся с проблемой удаления элемента из созданного мной представления переработчика. но я не могу понять, как удалять элементы, используя автоматически сгенерированный ключ. Вот как я добавил элемент в базу данных :

 DatabaseReference reference = FirebaseDatabase.getInstance().getReference("categories");
     String key = reference.push().getKey();
    reference.child(key).setValue(categoryData).addOnCompleteListener(new OnCompleteListener<Void>() {
        @Override
        public void onComplete(@NonNull Task<Void> task) {
            if(task.isSuccessful()){

                Toast.makeText(add_category.this, "Category added", Toast.LENGTH_SHORT).show();
                finish();

            }
        }
    }).addOnFailureListener(new OnFailureListener() {
        @Override
        public void onFailure(@NonNull Exception e) {
            Toast.makeText(add_category.this, "Failed to add", Toast.LENGTH_SHORT).show();
        }
    });

1 Ответ

0 голосов
/ 09 марта 2020

Как и в вашем комментарии, если вы хотите удалить, например, второй элемент, используйте следующие строки кода:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference secondChildRef = rootRef.child("categories").child("-M1qUEGi0u4rX5Ju59r4");
secondChildRef.removeValue().addOnCompleteListener(new OnCompleteListener<Void>() {
    @Override
    public void onComplete(@NonNull Task<Void> task) {
        if (task.isSuccessful()) {
            Log.d("TAG", "Second item deleted!");
        }
    }
});

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

...