Я использовал for val in snap.children
В прошлом, чтобы циклически перебирать данные в правильном порядке. (В противном случае данные не будут зацикливаться на том, как данные форматируются в БД, и ожидаемо).
Теперь, однако, у меня есть данные, которые я передаю объекту, который хранит данные, чтобы затем использовать их в другом VC.
func fetchAllUserFirstPostMedia(user: String) {
let databaseN = Database.database().reference()
databaseN.child("Posts").child(user).observe(.value, with: {(snapshot) in
guard snapshot.value as? [String: AnyObject] != nil else { return print("\(snapshot.value) <-- this is snapshot.value in return statement") }
let userUID = user
if user == userUID {
guard let postDictionary = snapshot.value as? [String:AnyObject] else { return }
for anyPosts in postDictionary {
print("inside the anyPosts")
let currentPost = Post()
let userObj = User(theuserID: userUID)
self.retrieveUsersInfo(userObj: userObj)
guard let posts = anyPosts.value as? [String:AnyObject] else { return }
/
/I pass this posts value into an object later in the code (object.snapshot = posts)
...
Тогда, однако, из другого VC я не могу перебрать с помощью .children, или, по крайней мере, так кажется. Можно ли преобразовать тип в DataSnapshot и выполнить цикл таким образом? Какое здесь решение?