필자는 다양한 속성의 값에 의존하는 많은 관계가있는 중앙 개체가있는 관리 데이터 모델을 상당히 가지고 있습니다. 나는 plist 집합을 사용하여 모델에 초기 데이터를 가져 왔으며 각 plist는 엔티티 클래스에 대한 속성을 지정하고 그 속성을 기반으로 관계를 채 웁니다.코어 데이터 관계 getter/setter 구현/보완 방법은 무엇입니까?
관계에 대한 getter를 수정하여 속성에 의해 제약 된 객체를 자동으로 가져 오려고했습니다. 여기 추론은 관리 객체로하고 수입 로직 밖으로 관계 구축을 이동했지만, 예를 들면 그 날 만들 수 없습니다 :이 불었다
-1 #import "SubclassedManagedObject.h'
0 #import "OtherManagedObject.h"
1 @implementation SubclassedManagedObject
2 @dynamic attr1
3 @dynamic relation1 // which is an OtherManagedObject
4 - (OtherManagedObject *)relation1
5 {
6 if(relation1 != nil)
7 return relation1;
8 NSFetchRequest *request = [[NSFetchRequest alloc] init];
9 [request setEntity://the OtherManagedObject entity];
A [request setPredicate://predicate based on attr1];
B NSArray *results;
C results = [[self managedObjectContext] executeFetchRequest:request//..];
D if([results count])
E relation1 = [results objectAtIndex:0];
F }
:
가설 SubclassedManagedObject.m 위로 라인 6에서 컴파일 할 때 :
error: 'attr1' undeclared (first use in this function): ATTR1의 값에 따라 조건을 만드는 곳
error: 'relation1' undeclared (first use in this function)
와 A 라인에
내 질문에 내가 할 수있는 일이 더 많거나 가능성이 더 높습니다. 더 좋은 방법이 있습니까?