Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.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
Swift 从解析中获取数据并将其存储到核心数据_Swift_Core Data_Parse Platform_Ios8 - Fatal编程技术网

Swift 从解析中获取数据并将其存储到核心数据

Swift 从解析中获取数据并将其存储到核心数据,swift,core-data,parse-platform,ios8,Swift,Core Data,Parse Platform,Ios8,我试图将一些数据存储到核心数据中,核心数据是从解析中获取的,如下面的代码所示 func storeAllDataFromParseToCore(){ let context : NSManagedObjectContext = appDel.managedObjectContext! let insertNew = NSEntityDescription.insertNewObjectForEntityForName("SomeEntity", inManagedObje

我试图将一些数据存储到核心数据中,核心数据是从解析中获取的,如下面的代码所示

func storeAllDataFromParseToCore(){    
    let context : NSManagedObjectContext = appDel.managedObjectContext!
    let insertNew = NSEntityDescription.insertNewObjectForEntityForName("SomeEntity", inManagedObjectContext: context) as! NSManagedObject
    let query = PFQuery(className: "SomeClass")
    query.selectKeys(["Name","Image","Type"])
    query.findObjectsInBackgroundWithBlock({(dummyObjects : [AnyObject]?,error :NSError?)-> Void in
        if error == nil {
            for obj : AnyObject in dummyObjects! {
                println(dummyObjects?.count)
                insertNew.setValue(obj.objectForKey("Name"), forKey: "name")
                insertNew.setValue(obj.objectForKey("Type"), forKey: "type")
                let res = context.save(nil)
                println("before \(res)")
                let file : PFFile = obj.objectForKey("Image") as! PFFile

                file.getDataInBackgroundWithBlock({(data : NSData?, error : NSError?)-> Void in
                     insertNew.setValue(data, forKey: "image")
                        let val = context.save(nil)
                    println(val)
                }) 
            }
        }
    })
}
当我保存时,它总是返回true,但当我再次从核心数据中提取时,并不是所有的图像和名称都被存储。例如:如果我在解析中有两个图像和对应的名称,则只存储一个。 在控制台中,它按如下所示打印

optional(2)
before true
optional(2)
before true
true
true

由于它返回真值,我认为所有的数据都被存储起来了。但当我检索时,只会存储一个图像。我不知道如何解决这个问题。请帮帮我

您只需调用一次insertNewObjectForEntityForName,这意味着您要插入一个对象。@Phillip谢谢!!你是对的。。终于成功了。。。