iPhone Core Data Example produces exception

2020-06-22 07:33发布

No longer under NDA.

There was an ommision in the iPhone Core Data example, but is now corrected. Also the sample code was always correct, they just left out some details in the tutorial.

(Please refer to iPhone Dev Forums for explanation)

I built an app twice and received the same error twice (but in 2 different places):

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: '+entityForName: could not locate an NSManagedObjectModel for entity name 'Event''

I read the apple docs:

It speaks to a problem with the model missing, or the context is nil, or the persistence store is not valid.

However as this is my first Core Data project, I'm a little weak in debugging. I can post code if needed.

Any help is much appreciated.

1条回答
Root(大扎)
2楼-- · 2020-06-22 08:32

I found the answer. (If you would like a iPhone 3.0 sdk version of this answer, refer to the link at the bottom of the page) This what should be in the app delegate applicationDidFinishLaunching method should be like so:

(void)applicationDidFinishLaunching:(UIApplication *)application { 

    NSManagedObjectContext *context = [self managedObjectContext];
    if (!context) {
        // Handle the error.
    }

    RootViewController *rootViewController = [[RootViewController alloc] 
                                              initWithStyle:UITableViewStylePlain]; 

    rootViewController.managedObjectContext = context;

    UINavigationController *aNavigationController = [[UINavigationController 
                                                      alloc] initWithRootViewController:rootViewController]; 
    self.navigationController = aNavigationController; 
    [window addSubview:[navigationController view]]; 
    [window makeKeyAndVisible]; 
    [rootViewController release]; 
    [aNavigationController release]; 
} 

iPhone Dev Forums Link

查看更多
登录 后发表回答