【发布时间】:2012-07-20 17:48:12
【问题描述】:
我已将所有相关代码添加到 App Delegate,我可以添加到数据模型并从 applicationDidFinishLaunchingWithOptions 中的数据模型中获取。
当我试图在我的视图控制器中写入数据模型时,我的问题就出现了。我已将此代码添加到头文件中:
NSFetchedResultsController *fetchedResultsController;
NSManagedObjectContext *managedObjectContext;
@property (nonatomic, retain) NSFetchedResultsController *fetchedResultsController;
@property (nonatomic, retain) NSManagedObjectContext *managedObjectContext;
并将这段代码添加到我的实现文件中:
NSManagedObjectContext *context = [self managedObjectContext];
NSManagedObject *model = [NSEntityDescription
insertNewObjectForEntityForName:@"Events"
inManagedObjectContext:context];
[model setValue:@"Sample Event" forKey:@"eventName"];
NSError *error;
if (![context save:&error]) {
NSLog(@"Couldn't save: %@", [error localizedDescription]);
}
但是,我收到以下错误:
'NSInvalidArgumentException', reason: '+entityForName: nil is not a legal NSManagedObjectContext parameter searching for entity name 'Events''
有人知道发生了什么吗?任何帮助将不胜感激。
【问题讨论】:
-
我认为上下文是零。确保 [self managedObjectContext] 没有返回 nil
-
请注意,如果您将 ivar 传递给 ManagedObjectContext 而不是使用 getter 方法,则会出现此错误
标签: objective-c ios xcode exception core-data