我試圖做一些非常類似於正在做的事情here,但由於沒有給出真正的答案,我想看看是否有人可以幫助我與我特別的問題。NSManagedObjectContext = [NSEntityDescription ...]後的SIGABRT
我只是試圖添加核心數據到我有的現有應用程序。 下面是我已經添加到相應的文件。 我也概述了我的應用程序加載時我在哪裏得到SIGABRT。 我已驗證「loadData」中的上下文變量不爲NULL。
AppDelegate.h
#import <UIKit/UIKit.h>
#import <CoreData/CoreData.h>
@interface AppDelegate : NSObject <UIApplicationDelegate> {
}
...
@property (readonly, retain, nonatomic) NSManagedObjectContext *managedObjectContext;
@property (readonly, retain, nonatomic) NSManagedObjectModel *managedObjectModel;
@property (readonly, retain, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator;
-(void)loadData;
@end
AppDelegate.m
#import "NewModel.h"
@synthesize managedObjectContext = __managedObjectContext;
@synthesize managedObjectModel = __managedObjectModel;
@synthesize persistentStoreCoordinator = __persistentStoreCoordinator;
...
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
...
__managedObjectContext = [[NSManagedObjectContext alloc] init];
__managedObjectModel = [[NSManagedObjectModel alloc] init];
__persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] init];
[__managedObjectContext setPersistentStoreCoordinator:__persistentStoreCoordinator];
[self loadData];
}
- (NSManagedObjectContext *)managedObjectContext {
if (__managedObjectContext) {
return __managedObjectContext;
}
NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];
if (!coordinator) {
return nil;
}
__managedObjectContext = [[NSManagedObjectContext alloc] init];
[__managedObjectContext setPersistentStoreCoordinator:coordinator];
return __managedObjectContext;
}
-(void)loadData
{
NSManagedObjectContext *context = [self managedObjectContext];
NSManagedObjectModel *newObj; // Tried NewModel = *newObj; thinking that may resolve
// the issue, didn't work though
newObj = [NSEntityDescription
insertNewObjectForEntityForName:@"NewModel"
inManagedObjectContext:context]; --> SIGABRT WHEN TRYING TO EXECUTE THIS
[newTeam setValue:@"value" forKey:@"modelValue"];
NSError *error;
[context save:&error];
}
NewModel.h
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
@interface NewModel : NSManagedObject
@property (nonatomic, retain) NSString * modelvalue;
@end
NewModel.m
#import "NewModel.h"
@implementation NewModel
@dynamic modelValue;
@end
抱歉,這是在我的代碼的新模式,在這個問題犯了一個錯誤,我會解決這個問題 – Vince613 2012-02-11 19:09:35