Swift - 从Firebase检索自动分配的ID

时间:2016-12-02 02:33:27

标签: swift firebase firebase-realtime-database

Firebase screenshot

我正在创建一个简单的应用程序,显示该数据库中每个项目的名称,当用户向左滑动时,他们可以删除该项目及其名称和数量。发生这种情况时,我需要从数据库中删除整个节点。我如何获得他们的ID才能做到这一点?

例如,当用户在Apple上滑动时,我需要获取ID KXsWXi1XE5cwdJiJQnj并删除整个部分。

提前致谢。

2 个答案:

答案 0 :(得分:0)

您可能希望将单元格的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
}

答案 1 :(得分:0)

试试这个: -

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()
    

    其中key是值或单元格的键。