Entity Reservation
에서 일부 개체를 삭제하려고합니다. 나는 이렇게하고있다.관리 대상 개체가 내 핵심 데이터베이스에서 올바르게 삭제되지 않았습니다.
NSManagedObjectContext *context = reservation.managedObjectContext;
[context deleteObject:reservation];
NSError *error = nil;
if (![context save:&error]) {
NSLog(@"Error is %@",error);
}
그 후 나는 다시 전체 entity
를 가져 내 개체를 삭제합니다. 개체가 내 entity
에서 삭제 된 것을 볼 수 있습니다. 하지만 내 응용 프로그램을 다시 시작하면 이전 세션에서 삭제 한 모든 객체가 내 entity
에 다시 저장됩니다.
웹 서비스에서받은 객체를 저장하기 위해 restkit
을 사용하고 있습니다. 또한 개체를 삭제하면 내 데이터베이스에서도 삭제됩니다.
내 응용 프로그램을 다시 시작하고 내 기록을 보면 이전 세션에서 삭제 한 웹 서비스에서 개체를 가져 오지 않았으므로 괜찮습니다. 유일한 문제는 어떻게 든 내 core database
에 다시 저장된다는 것입니다.
백그라운드 스레드에서 삭제가 발생합니까? 개체를 삭제할 때 영구 저장소가 업데이트되고 있다고 생각하지 않습니다. 백그라운드 스레드에서이 문제가 발생하면 mergeChangesFromContextDidSaveNotification을 사용하여 변경 내용을 병합하십시오. – sbarow
병합 변경 사항은 무엇을 의미합니까? – Steaphann