2016-08-27 2 views
0

私は、迅速かつfirebaseを使用してiOSアプリケーションに取り組んでいます。ユーザーのUIDエラー! (SwiftとFirebaseプロジェクト)

私は、登録されたユーザがデバイスを追加できる場所であるadd deviceというビューを持っています。 単にデバイス名、説明、カテゴリを入力してイメージを追加し、デバイスの追加ボタンをクリックするだけです。

ここで登録されたユーザーの情報が含まれている現在のダッシュボードです:

{ 
"UserProfile" : { 
"1EJ8QmEQBJfBez7PMADbftCjVff1" : { 
    "city" : "الرياض", 
    "email" : "[email protected]", 
    "name" : "Norah", 
    "phone" : "0564695353" 
}, 
"97PUAcUC5UYxLpBOLnC4yQjxiEf2" : { 
    "city" : "Riyadh", 
    "email" : "[email protected]", 
    "name" : "Mawada", 
    "phone" : "0534260282" 
    } 
} 
} 

は、私は別のノードにデバイス情報を追加したいです。この行で

 @IBAction func AddDeviceButton(sender: AnyObject) { 

    if DeviceName.text == "" || Description.text == "" || ImageView.image == nil { 
     let alert = UIAlertController(title: "عذرًا", message:"يجب عليك تعبئة معلومات الجهاز كاملة", preferredStyle: .Alert) 
     alert.addAction(UIAlertAction(title: "نعم", style: .Default) { _ in }) 
     self.presentViewController(alert, animated: true){} 

    } else { 


     let imageName = NSUUID().UUIDString 
     let storageRef = FIRStorage.storage().reference().child("Devices_images").child("\(imageName).png") 

     if let uploadData = UIImagePNGRepresentation(self.ImageView.image!) { 

      storageRef.putData(uploadData, metadata: nil, completion: { (metadata, error) in 

       if error != nil { 
        print(error) 
       return 
       } 

       let profileImageUrl = metadata?.downloadURL()?.absoluteString 

       let DeviceInfo = [ 
         "ImageUrl":profileImageUrl!, 
         "DeviceName":self.DeviceName.text!, 
         "Description":self.Description.text!, 
         "Category":self.itemSelected 
         ] 

        self.ref.child("Devices").child(user!.uid).setValue(DeviceInfo) 

      }) 






} 

} 

self.ref.child("Devices").child(user!.uid).setValue(DeviceInfo) 

ビューはUIDを認識できなかった

はここでボタンです!

なぜですか?

+0

ところでマライア、あなたはデバイスノードを作成しようとしている方法で、私は、あなたが1つのデバイスだけが前の値を置き換えるで終わるだろうと思います特定のデバイス、すなわち 'Device1'ノードにもありません... – Dravidian

+0

@ Dravidian私が知っている、私はそれが2つの質問だと思ったので、あなたは2番目の質問に答えなかったのです。私はその作品を作る方法を見つけようとしています。手伝ってくれますか? – Mariah

+0

@ Dravidian私はまだJSONの構造についてはわかりませんが、ネストされた構造のように感じます! – Mariah

答えて

1

だけで置き換える

self.ref.child("Devices").child(user!.uid).setValue(DeviceInfo) 

self.ref.child("Devices").child(FIRAuth.auth()!.currentUser!.uid).setValue(DeviceInfo) 
関連する問題