Incapaz de encontrar se existe um nó em tempo real do banco de dados

0

Pergunta

enter image description here

Eu tenho um firebase em tempo real árvore que tem um determinado nó New Ride definido quando o usuário está online, quando o nó offline New Ride é removido. Isso funciona bem para a primeira vez, Quando o usuário tenta ficar online novamente eu não posso configurar o nó. Quero verificar se o nó que já existe na árvore se não adicioná-lo.

Este é o meu código de tão longe

DatabaseReference rideRequestRef = FirebaseDatabase(databaseURL: firebaseUrl)
    .reference()
    .child("Drivers")
    .child(currentFirebaseUser.uid)
    .child("New Ride");
var ref = FirebaseDatabase(databaseURL: firebaseUrl)
        .reference()
        .child("Drivers")
        .child(currentFirebaseUser.uid);

    await ref
        //.child(currentFirebaseUser.uid)
        .child("New Ride")
        .once()
        .then((DataSnapshot dataSnapshot) {
      if (dataSnapshot == null) {
       
        rideRequestRef.set("searching");
      } else {
        rideRequestRef.set("searching");
       
      }
    });
   
    rideRequestRef.onValue.listen((event) {});
  }
firebase-realtime-database flutter
2021-11-24 06:44:20
1

Melhor resposta

0

Dado o seu código aqui:

await ref
    //.child(currentFirebaseUser.uid)
    .child("New Ride")
    .once()
    .then((DataSnapshot dataSnapshot) {
  if (dataSnapshot == null) {       
    rideRequestRef.set("searching");
  } else {
    rideRequestRef.set("searching");       
  }
});

Parece que se o nó existe ou não faz nenhuma diferença no que você faz. Então por que não substituir todo este fragmento com isso?

rideRequestRef.set("searching");       
2021-11-24 15:49:56

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................