두 가지 엔티티 (List 및 ListItem이 있음)가 있고 그 사이에 일대 다 관계가 설정되어 있습니다. 좋은.iPhone coredata 가져 오기 요청, 관계 및 섹션 기본 사항
필자가 fetchrequest를 수행하려고 할 때 내 문제는 listitem을 listitem의 속성으로 구분하여 반환 할 때 발생합니다.
- (NSFetchedResultsController *)getListItems {
// Init a fetch request
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"List" inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"listItem.productName" ascending:YES selector:nil];
NSArray *descriptors = [NSArray arrayWithObject:sortDescriptor];
[fetchRequest setSortDescriptors:descriptors];
// Init the fetched results controller
NSError *error;
self.globalFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest managedObjectContext:self.managedObjectContext sectionNameKeyPath:@"listItem.productName" cacheName:@"listItems"];
self.globalFetchedResultsController.delegate = self;
if (![[self globalFetchedResultsController] performFetch:&error]) NSLog(@"Error: %@", [error localizedDescription]);
[fetchRequest release];
[sortDescriptor release];
return self.globalFetchedResultsController;
}
지금은 내가 말 때문에이 오류 : '목록 = 어디, 그래서 나는 다음과 같은'을 'xxxxx는했다 말할 수있는 방법이 없기 때문에 나는되는 listItem 오브젝트에 직접 fetchrequest을 수행 할 수 없습니다 정렬 설명자에 일대 다 관계를 사용할 수는 없지만 정렬 설명자가 있어야하므로이 작업을 수행하는 올바른 방법이 확실하지 않습니다. 어떤 도움이라도 좋을 것입니다.
감사합니다. listitem에서 목록 객체까지 두 번째 역관계를 설정해야한다는 것을 알지 못했습니다. 위와 같이 목록을 지정할 수 있습니다. – tom
"두 번째 반비례 관계"란 무엇을 의미하는지 모르지만 Apple은 모든 관계가 양방향임을 강력하게 권장합니다. Xcode는 이러한 요소가 누락되었을 때 컴파일러에게 경고를 줄 것입니다. – gerry3