1

I have this structure:

-User:
     -user1:
              -name : cycy
              -email: cycy@test.com

What I intend to do is know what parent does the input email contains. for example if my input email is cycy@test.com, I should be able to output "user1". Here is my code:

hey = db.child("User").order_by_child("email").equal_to("cycy@test.com").get()
print(hey.val())

My problem with this code is that it outputs everything and not the parent "user1" only OrderedDict([('user1', {'name: cycy, email: cycy@test.com})])

How can i modify this so that it only gives the parent "user1"

Thank you!

sayrilkun
  • 57
  • 5

1 Answers1

1

Firebase Realtime Database queries always give a list of results, as there may be multiple child nodes that match the query. Even when there's only one result, you get a list of that one result. There is no way to change that behavior.

You will have to loop over the results, like shown in the Pyrebase documentation on handling a list of results. Based on that, your code would look something like:

for user in hey.each():
    print(user.key())
    print(user.val())
Frank van Puffelen
  • 565,676
  • 79
  • 828
  • 807