2016-06-07 111 views
12

通常圖像數據庫參考火力地堡的用戶,我將能夠在網上找到一個回答這個問題,但由於它太新我一直有麻煩。在與火力地堡存儲斯威夫特

當我的用戶登錄到App和他們選擇4-5圖片,他們的個人資料,我該如何存儲在火力地堡存儲這些圖像和參考這些圖像在火力地堡數據庫用戶?

感謝

回答

13

你將它們上傳到火力地堡存儲,然後再鏈接存儲在數據庫火力地堡

let storage = FIRStorage.storage() 
let data: NSData = myImageData 
let userProfilePic = storageRef.child("users/abc/profileimage.jpg") 

let uploadTask = userProfilePic.putData(data, metadata: nil) { metadata, error in 
    if (error != nil) { 
    // Uh-oh, an error occurred! 
    } else { 
    let downloadURL = metadata!.downloadURL 
    // store downloadURL in db 
    storeUserProfileInDB(downloadURL) 
    } 
} 

func storeUserProfileInDB(profileImgUrl: NSURL) { 
    let ref = FIRDatabase.database().reference() 
    let key = ref.child("users").childByAutoId().key 

    let dictionaryUser = [ "userName" : name! , 
          "imageUrl" : profileImgUrl.absoluteString, 
          ] 

    let childUpdates = ["https://stackoverflow.com/users/\(key)": dictionaryTodo] 
    ref.updateChildValues(childUpdates, withCompletionBlock: { (error, ref) -> Void in 
     //save 
    }) 

} 
+0

對不起了這麼久迴應但樣品幫助了很多!感謝 – JustinM

+0

並注意另一個QA這個重要的技巧.. https://stackoverflow.com/a/45395260/294884 – Fattie

相關問題