응용 프로그램에 로그인하면 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;
}
확인. 그리고 지금 뭐야? – Avi
debug 및 manageObjectContext.persistentStoreCoordinator의 값을 확인하고 올바르게 설정되어 있는지 확인하십시오. –