Skip to content

Instantly share code, notes, and snippets.

@rnystrom
Created March 11, 2014 17:37
Show Gist options
  • Save rnystrom/9490884 to your computer and use it in GitHub Desktop.
Save rnystrom/9490884 to your computer and use it in GitHub Desktop.
- (NSManagedObjectContext *)managedObjectContext {
if (! _managedObjectContext) {
NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"Moviedo" withExtension:@"momd"];
NSManagedObjectModel *managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
_managedObjectContext = [[NSManagedObjectContext alloc] initWithConcurrencyType:NSMainQueueConcurrencyType];
_managedObjectContext.persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:managedObjectModel];
NSURL *storeURL = [[[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject] URLByAppendingPathComponent:@"Moviedo.sqlite"];
NSDictionary *options = @{
NSMigratePersistentStoresAutomaticallyOption: @(YES),
NSInferMappingModelAutomaticallyOption: @(YES)
};
NSError* error;
if (! [_managedObjectContext.persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error]) {
DDLogError(@"Error loading store: %@",error);
abort();
}
}
return _managedObjectContext;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment