Как правильно использовать queryEqual (toValue: childKey :) в Firebase SDK для iOS? - PullRequest
0 голосов
/ 26 июня 2018

Я новичок в NoSQL и Firebase.У меня есть база данных, как это для пути "писателей".

enter image description here

Я пытался найти любого пользователя с электронной почтой "test@test.com", используя этот код:

ref.child("writers").queryEqual(toValue: "test@test.com", childKey: "email").observeSingleEvent(of: .value, with: { snap in
    print (String(describing: snap.value));
}

Но все, что я получил, это Optional(<null>) на консоли.Что не так с моим кодом?Я думал, что это довольно просто, но я не могу заставить его работать, несмотря на любое исправление, которое я пробовал.

Хотя я могу успешно получить все данные писателей, если я использую код:

ref.child("writers").observeSingleEvent(of: .value, with: { (snap) in
    print (String(describing: snap.value));
}

1 Ответ

0 голосов
/ 26 июня 2018

Правильный синтаксис:

ref.child("writers").queryOrdered(byChild: "email").queryEqual(toValue: "test@test.com").observeSingleEvent(of: .value, with: { snap in
  ...

Используемая вами перегрузка для другого (и гораздо менее распространенного) варианта использования.

Также см. Некоторые другие вопросы о запросе Firebase вSwift:

...