当我尝试构建我的Core Data App时,大多数代码来自CoreDataBooks示例,我收到错误
'+entityForName: could not locate an NSManagedObjectModel for entity name 'Child''
因此,在阅读之后,我找到了可能的原因(见This Older Stack Overflow Question):
我的问题是,如何判断哪些错误导致错误,以及如何解决错误。我在调试和核心数据方面经验不足,所以这是全新的。
答案 0 :(得分:0)
最有可能的是,managedObjectContext出现了nil。我解决这个问题的方法是将managedObjectContext传递给前面的视图控制器(如果它是基于导航的)或者在viewDidLoad中显式声明上下文,如下所示:
- (void)viewDidLoad {
if (managedObjectContext == nil) {
managedObjectContext = [(MyAppDelegate *)[[UIApplication sharedApplication] delegate] managedObjectContext];
}
}
这将获取在您的app委托文件中创建的上下文,并将其应用于您正在使用它的视图。有很多方法可以分配上下文,但这可能是最直接的