2016-09-02 5 views
0

Firebaseデータベースの子アイテムのデータを追加するにはどうすればよいですか?以下は私のコードです。Firebaseデータベースの子アイテムからデータを追加するにはどうすればいいですか?

import UIKit 
import Firebase 
import FirebaseDatabase 

class MedalViewController: UICollectionViewController { 

    var imagesArray = [String]() 
    var identities = [String]() 
    var identities2 = [String]() //Creates an empty array 
    var imagesArrayGreyed = [String]() 
    let databaseRef = FIRDatabase.database().reference() 
    let userID = FIRAuth.auth()?.currentUser?.uid 

    override func viewDidLoad() { 
     super.viewDidLoad() 
     imagesArray = ["1", "2", "3"] //Add all the medal images here 
     identities = ["Shield", "Tie", "Star"] //Add all the identities here 
     identities2 = ["Shield"] //Choose what medals the user has. 
     imagesArrayGreyed = ["1Greyed","2Greyed","3Greyed"] //Add all the greyed images here 

     databaseRef.child("users").child(userID!).observeSingleEventOfType(.Value, withBlock: { (snapshot) in 
      // Get user value 
      var newIdentities2 = snapshot.value!["medals"] as! String 

      // how do I continue on from here? 


      // ... 
     }) { (error) in 
      print(error.localizedDescription) 
     } 


    } 

ここに私のFirebaseデータ構造の画像です:

Image

ViewControllerを開いた後、配列に追加されたときにデータが一度だけ取得する必要があります。ご協力いただきありがとうございます。

編集:意図はfirebase子供のメダル」からデータを取得し、ローカル配列「identifier2」

答えて

0
databaseRef.child("users").child(userID!).observeSingleEventOfType(.Value, withBlock: { (snapshot) in 
     // Get user value 
     if let identities = snapshot.value! as? [String:AnyObject]{ 
       for each in identities.1 as String{ 
        identifier2.append(each)//will append medals 
       } 
     } 
     // ... 
    }) { (error) in 
     print(error.localizedDescription) 
    } 
にそれを追加することです
関連する問題