ManagedObjectContext上的核心数据错误保存

时间:2012-02-21 19:38:58

标签: objective-c core-data ios5

Oof ......这里有问题..

我正在使用CoreData,我的导航控制器的根视图提供了一个人员列表。

如果我点击一名工作人员,我会推送该工作人员的详细信息视图。

如果我点击其中一个详细信息字段(即“名称”或“位置”),我会按下编辑视图控制器,我可以在其中更改数据,然后保存。

我有两个不同的编辑控制器...一个用于简单文本编辑(“EditTextController”),一个用于Location(“EditLocationController”),这是一个关系字段,您可以从列表中选择位置。

如果我创建一名新员工,一切都很完美。我甚至可以毫无错误地更新任何文本字段或位置字段。

当我尝试更新现有员工时出现问题。我能够改变他们的位置没问题......没有错误。但是,如果我尝试更新现有员工的文本字段,我会收到一个令人讨厌的错误。

-[StaffListMasterViewController configureCell:atIndexPath:]: unrecognized selector sent to     instance 0x6d7e650
2012-02-21 14:32:14.663 FanOut[2664:fb03] CoreData: error: Serious application error.      
Exception was caught during Core Data change processing.  This is usually a bug within an 
observer of NSManagedObjectContextObjectsDidChangeNotification.  -    
[StaffListMasterViewController configureCell:atIndexPath:]: unrecognized selector sent to  
instance 0x6d7e650 with userInfo (null)
2012-02-21 14:32:14.665 FanOut[2664:fb03] *** Terminating app due to uncaught exception  
'NSInvalidArgumentException', reason: '-[StaffListMasterViewController configureCell:atIndexPath:]: unrecognized selector sent to instance 0x6d7e650'

令人困惑,因为两个控制器中的代码似乎相同

- (void) saveButtonPressed:(id) sender {

[managedObject setValue:textField.text forKey:keyString];

//Save the context
NSError *error = nil;
if (![self.managedObjectContext save:&error]) {
    NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
    abort();
} else {
     [self.navigationController popViewControllerAnimated:YES];
}
}

我不知道......我确定我可能没有提供足够的信息来解决这个问题。但也许有人建议我还需要包括什么来进行故障排除?提前谢谢......

1 个答案:

答案 0 :(得分:1)

显示此方法的代码: - [StaffListMasterViewController configureCell:atIndexPath:]。使用此信息更新您的问题,以便您可以获得文本格式的好处。