Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/98.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios swift firebase迭代每个快照值以更新/设置值_Ios_Swift_Firebase_Firebase Realtime Database_Snapshot - Fatal编程技术网

Ios swift firebase迭代每个快照值以更新/设置值

Ios swift firebase迭代每个快照值以更新/设置值,ios,swift,firebase,firebase-realtime-database,snapshot,Ios,Swift,Firebase,Firebase Realtime Database,Snapshot,我正在尝试从firebase数据库获取所有数据,并以不同方式更新或设置每个值(如果为nil)。例如,我有5个用户: [1-jon-likedby:jef,2-jef-likedby:nil,3-jake,4-mat,5-taylor-likedby:jon] 它应该以不同的方式更新/设置每个值(当按下按钮更新/设置值并转到下一个值时) 我的代码显示我可以迭代,但我不知道如何设置每个值。 或者在firebase snapshot中不可能?如果可能,请就解决问题的其他或类似方法提供建议 Databa

我正在尝试从firebase数据库获取所有数据,并以不同方式更新或设置每个值(如果为nil)。例如,我有5个用户:

[1-jon-likedby:jef,2-jef-likedby:nil,3-jake,4-mat,5-taylor-likedby:jon]

它应该以不同的方式更新/设置每个值(当按下按钮更新/设置值并转到下一个值时)

我的代码显示我可以迭代,但我不知道如何设置每个值。
或者在firebase snapshot中不可能?如果可能,请就解决问题的其他或类似方法提供建议

Database.database().reference().child("posts").observeSingleEvent(of: .value, with: { snapshot in
        print("##########")
        var dictionary = snapshot.value as! [String:AnyObject]

        for(_,value) in dictionary{
            if let firstKey = snapshot.key as? String{

                var likedby = value["Liked By"] as? String
                let name = value["name"] as? String
                let age = value["age"] as? String
                let caption = value["caption"] as? String
                let picURL = value["photoURL"] as? String
                let gender = value["gender"] as? String
                print("TTT")
                print(name, "was liked by",likedby)

                if likedby == nil || likedby != "Othman" {
                    print("****")
                    print(name)

Firebase
DataSnapshot
是只读的。它主要用于读取以前从Firebase获取的数据


您需要使用方法来更新给定节点。如注释中所述,该属性提供了一种方便的方法来获取与给定快照对应的
数据库引用。

您可以通过其
ref
属性获取快照的
FIRDatabaseReference
。请参阅@FrankvanPuffelen尼斯提示,谢谢s!完全忘记了handy
ref
属性。。。