0

アプリケーションにログインすると、NSManagedObjectContext * managedObjectContext = self.managedObjectContextでクラッシュするようです。我々はコアのデータモデルを変更するたびに、次のコンテキストメソッドを保存し、エラー「このNSPersistentStoreCoordinatorは何の永続ストア(スキーマの不一致または移行の失敗を)持っていない。それは、保存操作を実行することはできませんが。」与え、このNSPersistentStoreCoordinatorは保存操作を実行できません

- (BOOL) saveContext 
{ 
    @synchronized (_localStorage) { 
     //NSLog(@"----------------------------Save context called---------------------------"); 
     BOOL result = TRUE; 
     NSError *error = nil; 
     NSManagedObjectContext *managedObjectContext = self.managedObjectContext; 

     if (managedObjectContext != nil) 
     { 
      if ([managedObjectContext hasChanges] && ![managedObjectContext save:&error]) 
      { 
       NSLog(@"----------------------------Save context failed---------------------------"); 
       result = FALSE; 
       NSLog(@"Unresolved error %@, %@", error, [error userInfo]); 
      } 
     } 

     //NSLog(@"----------------------------Save context completed---------------------------"); 

     return result; 
    } 
} 
- (NSPersistentStoreCoordinator *)persistentStoreCoordinator 
    { 
     if (__persistentStoreCoordinator != nil) 
     { 
      return __persistentStoreCoordinator; 
     } 

     NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"Badger.sqlite"]; 

     NSError *error = nil; 
     __persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]]; 

     NSDictionary *options = @{ 
            NSMigratePersistentStoresAutomaticallyOption : @YES, 
            NSInferMappingModelAutomaticallyOption : @YES, 
            NSSQLitePragmasOption : @{@"journal_mode" : @"DELETE"} 
            }; 

     if(![__persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error]) 
     { 
      NSLog(@"Unresolved error %@, %@", error, [error userInfo]); 
     } 

     return __persistentStoreCoordinator; 
    } 
+0

OK。そして今何? – Avi

+0

デバッグし、manageObjectContext.persistentStoreCoordinatorの値をチェックし、正しく設定されているかどうかを確認してください –

答えて

関連する問題