질문에 완전히 명확하지는 않지만 관리 대상 개체를 업데이트하는 작업은 간단합니다. 당신이 초기 추가하고있는 경우에는이 같은 코드를 사용할 수 있습니다 (AN 유사을 SQL에서 "삽입") : 새 항목을 삽입하기 위해 관하여
NSManagedObject *obj;
obj = [NSEntityDescription insertNewObjectForEntityForName:@"UserData" inManagedObjectContext:context];
[obj setValue:user forKey:@"userName"];
[obj setValue:goalCategory forKey:@"goalCategory"];
[obj setValue:goalDetail forKey:@"goalDetail"];
NSError __autoreleasing error;
[context save:&error];
합니다. 작업중인 관리 객체를 찾은 후 업데이트하려면 관리 객체의 값을 변경하고 [context save : & 오류]를 사용하면됩니다. 다음은 그 예입니다.
UserData *uData = (UserData *) managedObj;
uData.itemName = nameText;
NSError __autoreleasing *error;
[context save:&error];
꽤 많이 있습니다. 당신은 업데이트 할 수있는 객체 (들)을 선택하면
는 업데이트에 관해서는, 그들은는있는 NSArray입니다
fetchedResultsController.fetchedObjects
에 포함되어 있습니다. 그래서, 당신은 같은 것을 할 수 있습니다
UserData *uData = (UserData *) [fetchedResultsController.fetchedObjects objectAtIndex:3];
uData.completed = YES;
NSError __autoreleasing *error;
[context save:&error];
그래서, 이것은 fetchedObjects 배열의 인덱스 3에있는 개체에 대해 YES ==가되도록 UserData를 엔티티에 완료 필드를 업데이트합니다.
다른 업데이트 방법과 많은 옵션이 있지만 그럴 필요가 없다는 것을 알고 있습니다. fetchedObjects는 가져 오기에서 반환 한 항목을 포함하는 배열입니다. 그들을 업데이트하고 각 객체를 엔티티 (NSManagedObject로 정의 됨)에 캐스팅 한 다음 변경 사항을 컨텍스트 저장합니다.
HTH.
제 질문이 더 명확하게 업데이트되었습니다. 당신이 내게 준 첫 번째 코드 스 니펫은 의미가 있습니다. 이해하는 정보 저장. 그것은 내가 잃어버린 특정 객체 (예를 들어, 일단 편집되거나 완료되었다고 표시되는 Task 객체)를 업데이트하는 것입니다. – LazerLex
응답의 수정본을 참조하십시오. – RegularExpression