我有一個簡單的iphone應用程序與一對多的禮物到收件人的關係(也就是說,一個收件人可以得到很多禮物,但每個禮物都必須去一個收件人。爲了創建禮物和收件人之間的關係,我首先在託管對象上下文中創建新的收件人對象,將新控制器的收件人對象設置爲新的收件人,然後將新控制器彈出到navigationController上。當新控制器返回時,我將新收件人分配給禮物調試NSObjectInaccessibleException錯誤。對象的managedobjectcontext變爲零?
爲交易代碼:
RecipientEditController *nextController = [
[RecipientEditController alloc]
initWithStyle:UITableViewStyleGrouped
];
Recipient *new = [NSEntityDescription
insertNewObjectForEntityForName:@"Recipient"
inManagedObjectContext:gift.managedObjectContext
];
[new addGiftsObject:gift];
nextController.recipient = new;
nextController.recipient.hideRelationships = YES;
[self.navigationController pushViewController:nextController animated:YES];
if ([new hasData]) {
gift.recipient = new;
} else {
[gift.managedObjectContext deleteObject:new];
}
break;
在新的控制器,接收者對象似乎歌劇院正常吃飯我可以在ViewWillAppear方法中打印接收者的描述。但是,當我到達tableView:cellForRowAtIndexPath方法時,我的收件人對象不再有效:其managedObjectContextProperty爲零,並且調用recipient.firstName(在模型類和數據庫中定義的屬性)時,會引發錯誤。
錯誤:
2011-11-30 17:22:18.111 Gift Hero[36359:b603] *** Terminating app due to uncaught exception 'NSObjectInaccessibleException', reason: 'CoreData could not fulfill a fault for '0x59e65c0 <x-coredata://97FDB78C-6F65-4B54-8DBB-00A9C6A4B4C8/Recipient/p21>''
任何想法是怎麼回事?這真是讓我瘋狂!收件人如何才能在顯示視圖和顯示錶格之間無效?
在此先感謝,PT