2013-07-23 1 views
1

코어 데이터에 문제가 있습니다. 내 핵심 데이터 모델의 데이터로 채워진 배열에서 채워지는 viewcontroller1 테이블보기가 있습니다. 셀을 선택하면 저장된 데이터를 볼 수있는 viewcontroller2으로 밀어 넣습니다. 여기에서 "편집"이라는 버튼이 있는데,이 버튼을 선택하면 해당 데이터를 편집 할 수있는 viewcontroller3의 모달 섹이됩니다. 편집 된 데이터를 저장하는 코드는 다음과 같습니다. 나는이를 호출하려고 할 때마다코어 데이터가 지속되지 않음

//editModel 

[self.editModel setValue:self.editNameTextField.text forKey:@"name"]; 
[self.editModel setValue:self.editTextView.text forKey:@"text"]; 
[self.editModel setValue:[NSDate date] forKey:@"date"]; 

NSError *error; 
if (![[self.delegate managedObjectContext] save:&error]) 
{ 
    NSLog(@"Can't save the edit: %@", [error localizedDescription]); 
} 

if (self.delegate) 
    [self.delegate dismissEdit:self]; 
else 
    NSLog(@"There is no delegate"); 

그러나, 나는 NSLog 얻을 : Can't save the edit: (null)

viewcontroller2 변경 사항을 반영; 테이블보기도 viewcontroller1입니다. 하지만 iOS 시뮬레이터를 종료하고 다시 실행하면 편집 프로세스 이전의 데이터 만 가져옵니다. 도움?

+0

대리인이 관리되는 개체 컨텍스트를 반환 : 오히려 delegate에서 그것을 얻을 것보다, 각 관리 객체는이 그래서 당신이 할 수있는 추가되어 관리되는 개체 컨텍스트에 대한 링크가? – Wain

+0

@Wain - 네, 맞습니다. –

+3

체크 했습니까? '[self.editModel.managedObjectContext save : & error]'시도해보십시오. – Wain

답변

0

대부분의 경우 관리 대상 개체 컨텍스트는 delegate에서 사용할 수 없습니다.

[self.editModel.managedObjectContext save:&error]