2017-10-18 5 views
0

J'ai la structure suivante, cities est un tableau.Retour de la base de données Firebase Nœuds avec un enfant ayant une certaine valeur

-NodeX 
-KtI6rv4Wf5eEZLLXqRp 
    name: MyName1 
    Description: My Desc1 
    Cities 
    0 
     name:My City 
     isBig: False 
    1  
     name:Your City 
     isBig: True 
    2 
     name:His City 
     isBig: False 
-KtKHcUjNlBuZSY7_5kv 
    name: MyName 
    Description: My Desc 
    Cities 
    0 
     name:My City 
     isBig: False 
    1 
     name:Your City 
     isBig: False 
    2 
     name:His City 
     isBig: False 
-Kuc1bpEcW2yJEq6OK72 
    name: MyName 
    Description: My Desc 
    Cities 
    0  
    name:My City 
    isBig: True 
    1  
    name:Your City 
    isBig: True  
    2 
    name:His City 
    isBig: False 

Je veux obtenir les noeuds supérieurs de niveau ayant toute ville qui est grand (isBig = True) à savoir que je veux obtenir après deux nœuds.

KtI6rv4Wf5eEZLLXqRp

Kuc1bpEcW2yJEq6OK72

Idéalement, je veux utiliser Polymerfirequery element, mais même s'il y a une autre solution, j'aller avec ça.

+1

La base de données Firebase Realtime ne permet en aucun cas d'interroger ces propriétés imbriquées. Vous devrez modifier votre structure de données pour autoriser la requête souhaitée. Voir [ma réponse ici pour en savoir plus] (https://stackoverflow.com/questions/46801852/google-firestore-structuring-deeply-nested-ordered-data). –

Répondre

0

Ce n'est pas possible, vous devez changer votre structure de données.

Quelque chose comme ce serait le chemin à parcourir:

-cities 
    -KtI6rv4Wf5eEZLLXqRp 
    0 
     name:My City 
     isBig: False 
    1  
     name:Your City 
     isBig: True 
    2 
     name:His City 
     isBig: False 
-info 
    -KtI6rv4Wf5eEZLLXqRp 
    name: MyName1 
    Description: My Desc1 

Ensuite, vous devez chercher vos données.