Comment obtenir la clé de la valeur de firebase
Comment puis-je obtenir la clé "-KLpcURDV68BcbAvlPFy" quand je sais que le champ "nom" contient "efg" dans la structure suivante dans Firebase.
clubs
-KLpcURDV68BcbAvlPFy
dept: "abc"
desc: "xyz"
name: "efg"
-asdasdasddsad
dept: "asda"
desc: "asd"
name: "adddd"
J'ai essayé cela, mais il est revenu à des "clubs"
mDatabase.child("clubs").orderByChild("name").equalTo("efg").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String clubkey =dataSnapshot.getKey();
OriginalL'auteur THe_strOX | 2016-07-06
Vous devez vous connecter pour publier un commentaire.
C'est parce que vous êtes à l'aide d'un
ValueEventListener
. Si la requête correspond à plusieurs enfants, elle retourne une liste de tous ces enfants. Même si il n'y a qu'un seul correspond à l'enfant, c'est encore une liste de. Et puisque vous êtes en appelantgetKey()
sur cette liste, vous obtenez la clé de l'emplacement où vous avez exécuté la requête.Pour obtenir la clé de matchs les enfants, en boucle sur les enfants de l'instantané:
Mais notez que si vous supposez que le nom du club est unique, vous pouvez ainsi stocker les clubs sous leur nom et leur accès correct sans requête:
OriginalL'auteur Frank van Puffelen