0
我有一個酒吧檯,並希望使用該欄的存儲圖片來自它刪除單個酒吧。我使用酒吧的名字來刪除酒吧。刪除對象的火力
酒吧名稱是獨一無二的 - 我查詢酒吧的名稱之前添加一個新酒吧,以確保沒有兩個酒吧有相同的名稱。
這是我的功能,我如何做到這一點。從數據庫中刪除欄對象時遇到問題。當然,當我這樣做時,它刪除了整個酒吧的表格。有沒有辦法讓欄的autoId的鍵或id能夠刪除它。什麼是正確的做法。
func deleteBar(name:String ,completion:@escaping (_ status:Bool, _ msg:String?)->())
{
let ref = FIRDatabase.database().reference(fromURL: dbURL).child("bars").child(name)
storage = FIRStorage.storage()
// print(key)
let locationRef = FIRDatabase.database().reference(fromURL: dbURL).child("bar_locations")
//delete from bars
ref.parent?.removeValue() //This deleted the whole bars table
//delete from location
locationRef.child(name).removeValue()
let storageRef = storage?.reference(forURL: storageURL).child("bars").child(name).child("logo.jpg")
storageRef?.delete(completion: { (err) in
if err == nil {
completion(true, "Deleted")
} else {
//print(err?.localizedDescription ?? <#default value#>)
completion(false, err?.localizedDescription)
}
})
}
可以存儲參考或路徑在火力地堡數據庫的存儲數據。此外,檢查出[刪除文件](https://firebase.google.com/docs/storage/ios/delete-files) – Jay
@Jay我的問題是不是在我的存儲刪除文件。問題是刪除我的酒吧表中的一個對象。酒吧表包含酒吧的ID,每個ID都有酒吧名稱,酒吧類別等屬性......重點是我想知道酒吧名稱的ID以便能夠刪除它。 –
問題說成*在火力刪除對象*,所以它假設您想刪除火力的對象。如果問題是如何從一個表中刪除的對象(我假設你在代碼中的表?),你應該更新你的問題。如果你問如何得到父節點名,一看便知[本問題](http://stackoverflow.com/questions/40876616/how-to-check-for-value-in-firebase-that-is-下一個 - 自動識別孩子持有?noredirect = 1個#comment68990882_40876616)。這是一個無關的問題,但答案顯示了您可能想要使用的設計模式的一個示例。 – Jay