核心数据 – 与核心数据的关系故障

前端之家收集整理的这篇文章主要介绍了核心数据 – 与核心数据的关系故障前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
(使用 swift / Xcode beta 3)

我的项目中有两个实体 – 一个与其子项具有一对多关系的父实体.在保存上下文之前添加新对象时,一切正常.但是,在重新启动应用程序并再次获取父对象后,我收到所有子项的“关系错误”.这是我如何保存我的上下文:

func saveContext () {
    var error: NSError? = nil
    let appDel:AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
    let context =  appDel.managedObjectContext

    if context == nil {
        return
    }
    if !context.hasChanges {
        return
    }
    if context.save(&error) {
        return
    }

    println("Error saving context: \(error?.localizedDescription)\n\(error?.userInfo)")
    abort()
}

我尝试更改includesSubentities = true和setReturnsObjectsAsFaults = false,但似乎没有帮助. Objective-C的“关系错误”问题的大部分答案似乎都是使用setRelationshipKeyPathsForPrefetching,但是在Swift中使用NSFetchRequest似乎是不可能的.

有没有我失踪的东西?

正如GeneratorOfOne所说,故障只是意味着对象尚未被提取到内存中.而且你是正确的,你“不能得到这些孩子的对象来抓取,只是访问他们不做这个工作.”要使对象被提取,您必须评估对象的属性,即实际使用该对象的值.

猜你在找的Swift相关文章