我做一个简单的应用程序,它会显示该数据库中的每个项目的名称,用户刷卡离开的时候,他们可以删除的项目,连同检索自动分配的ID其名称和数量。发生这种情况时,我需要从数据库中删除整个节点。我如何获得他们的ID来做到这一点?
例如,当用户在Apple
上滑动时,我需要获取ID KXsWXi1XE5cwdJiJQnj
并删除整个部分。
在此先感谢。
我做一个简单的应用程序,它会显示该数据库中的每个项目的名称,用户刷卡离开的时候,他们可以删除的项目,连同检索自动分配的ID其名称和数量。发生这种情况时,我需要从数据库中删除整个节点。我如何获得他们的ID来做到这一点?
例如,当用户在Apple
上滑动时,我需要获取ID KXsWXi1XE5cwdJiJQnj
并删除整个部分。
在此先感谢。
您可能希望将单元的ID与实际单元相关联。您可以通过创建一个ID列表并在数据库中追加每个ID附加到列表中。因此,当用户在列表中选择第二个项目时,可以通过转到ID列表中的第二个项目来访问关联的ID。
例如:
var listOfIDs = [String]() // goes in public scope of class
//Adding data from database to populate cells
for child in snapshot.children {
// Add child info to your list of info being displayed
// HERE YOU WOULD APPEND listOfIDs by this child's ID
}
试试这个: -
FIRDatabase.database().reference().child("ShoppingItems").observeSingleEvent(of: .value, with: {(Snapshot) in
if let snapDict = Snapshot.value as? [String:AnyObject]{
for each in snapDict{
let key = each.key
print(key)
}
}
})
删除: -
从本地数据库即数组中删除,然后再调用这个函数
FIRDatabase.database().reference().child("ShoppingItems/\(key)").removeValue()
其中键是您的值或单元格的键。