Извлечение и фильтрация данных в firebase - PullRequest
0 голосов
/ 01 мая 2020

Я пытаюсь отфильтровать некоторые пользовательские данные из firebase по именам пользователей в swift 5, ниже мой код:

func getUsersWithUserName(givenUserName: String, completionHandler: @escaping (_ isSuccess: Bool) -> Void) {
        print("Enter getUsersWithUserName")
        print(givenUserName)
        let usersRef = dbRef.child("users")
        usersRef.queryOrdered(byChild: "userName").queryEqual(toValue: givenUserName, childKey: "userName").observeSingleEvent(of: .value, with: { snapshot in
            print("nakul")
            print(snapshot)
            for child in snapshot.children {
                print(child)
                let key = snapshot.key
                print(key)
            }
        })

        print("Exit getUsersWithUserName")

    }

Ниже моя структура базы firebase user:

enter image description here

Я уже прочитал ответы ниже:

Как фильтровать данные Firebase в Swift?

эффективно запрашивает базу данных

но я все еще не получаю никаких результатов.

Мой журнал выглядит следующим образом:

Enter searchBarButtonClicked
Enter getUsersWithUserName
nac
Exit getUsersWithUserName

Я не совсем уверен, что я здесь не хватает.

1 Ответ

1 голос
/ 01 мая 2020

Пожалуйста, попробуйте это, надеюсь, это решит вашу проблему:

let query: DatabaseQuery = dbRef.child("users").queryOrdered(byChild: "userName").queryEqual(toValue: givenUserName)
query.observeSingleEvent(of: .value, with: { (snapshot) in
    //Your code here
}) { (error) in
    print(error.localizedDescription)
}

Пожалуйста, прокомментируйте, если у вас есть какие-либо вопросы.

Рад помочь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...