좋아요, 아주 간단한 응용 프로그램을 설정했습니다.UIPickerView를 사용하여 CoreData 관계 만들기
두 개의 서로 다른 CoreData 엔터티, 게임 및 플랫폼이 있는데, 각각 하나의 속성 : 이름이 있으며 둘 사이에는 일대 다 관계가 있습니다.
플랫폼은 응용 프로그램의 처음 실행시 채워지며 사용자 입력의 결과로 절대로 변경되지 않습니다.
사용자가 개인 데이터베이스에 새 게임을 추가 할 수 있도록 추가보기에서 작업 중이며 각 게임은 플랫폼에서 선택해야합니다. 추가보기 자체는 정적 사용자 정의 셀이있는 그룹화 된 테이블보기입니다. 플랫폼 셀을 탭하면 사용자가 플랫폼을 선택하기 위해 다른보기로 이동해야합니다.
내 생각에 플랫폼 목록이 정적이기 때문에 UIPickerView가 컨트롤에 대한 논리적 선택 인 것처럼 보이지만 CoreData와 함께 사용하는 방법을 잘 모르겠습니다. 플랫폼 객체를 가져오고 문자열을 추출하기위한 가져 오기 요청을 생성하더라도 새 Game 객체를 원래 Platform 객체에 연결하는 방법은 무엇입니까? 이것은 또한 자동으로 코어 데이터 yourGameObject
를 통해 업데이트
Platforms *newPlatform = (Platforms *) [NSEntityDescription insertNewObjectForEntityForName:@"Platforms" inManagedObjectContext:self.managedObjectContext];
[newPlatform setValue:@"yourPlatformName" forKey:@"name"];
[newPlatform setValue:yourGameObject forKey:@"games"];
NSError *error;
if (![[self managedObjectContext] save:&error]) {
// Handle error
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
}
: