Отображение отфильтрованных данных Firebase в UItableview - PullRequest
0 голосов
/ 08 мая 2018

У меня есть структура с именем художников, которая содержит id, artistName, artistGenre и artistCountry. Скриншот для уточнения. Я хочу отфильтровать данные и показать художников с artistCountry = "Asgard" в виде таблицы

Вот что я делаю сейчас:

let query = Database.database().reference().child("artists").queryOrdered(byChild: "artistCountry").queryEqual(toValue: "Asgard")
    query.observe(.value, with:{ (snapshot: DataSnapshot) in
        if snapshot.childrenCount >= 0{
            self.artistsList.removeAll()
        for snap in snapshot.children {
            print((snap as! DataSnapshot).childSnapshot(forPath: "artistName"))
            //getting values
            let artistObject = (snap as AnyObject).value as? [String: AnyObject]
            let artistName = artistObject?["artistName"]
            let artistGenre = artistObject?["artistGenre"]
            let artistCountry = artistObject?["artistCountry"]
            let artistId = artistObject?["id"]
            //creating artists object with model and fetched values
            let artist = artistModel(id: artistId as! String?, name: artistName as! String?, genre: artistGenre as! String?, country: artistCountry as! String?)
            //adding to array
            self.artistsList.append(artist)

        }
            self.tblArtists.reloadData()

        }
    })

Использование массива artistList для отображения в таблице. Однако я получаю сообщение об ошибке «Неоднозначное использование значения» в let artistObject = (snap as AnyObject).value as? [String: AnyObject] Как добавить отфильтрованные данные в массив и отобразить их в виде таблицы?

...