[英]core data saving context
重新啟動應用程序后,我只會看到保存的上下文。 我有兩個視圖控制器,一個允許用戶保存核心數據記錄,另一個用於顯示。 當我保存新記錄時,然后轉到表視圖以查看所有創建的記錄,但看不到新記錄。 這是我創建記錄的方式:
NSManagedObjectContext *context = [self managedObjectContext];
Property *myProperty = [NSEntityDescription
insertNewObjectForEntityForName:@"Property"
inManagedObjectContext:context];
myProperty.aptDescription = curProperty.description;
NSError *error;
[context save:&error];
[appDelegate saveContext];
然后我將它撤回:
ATAppDelegate *appDelegate = (ATAppDelegate *)[[UIApplication sharedApplication]delegate];
_managedObjectContext = [appDelegate managedObjectContext];
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription
entityForName:@"Property" inManagedObjectContext:_managedObjectContext];
[fetchRequest setEntity:entity];
NSError *error;
self.myProperties = [_managedObjectContext executeFetchRequest:fetchRequest error:&error];
但是就像我說的那樣,創建記錄后立即回到表視圖時,不會顯示新對象。 有什么問題
聽起來您沒有正確實現NSFetchedResultsController
的委托方法。 盡管您沒有共享任何視圖代碼,所以無法確定。
另外,保存后,您無需檢查-save:
的BOOL
返回。 您應該始終, 始終 始終檢查BOOL
並至少記錄錯誤。 您可能會拋出一個錯誤,卻永遠不知道。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.