2010-11-29 2 views
1

내 모델에서 2 개의 엔티티 사이에 1 대 다수의 관계가 있습니다. '1'쪽에있는 entity1을 가져 와서 설정된 관계에 액세스합니다. 현재 세트에 항목이 없다는 것을 발견하면 서비스에서 정보를 요청하고, 엔티티를 작성/삽입하고, 속성을 설정하고, 관계를 다시 entity1로 설정하고, ManagedObjectContext를 저장합니다.CoreData 관계가 삽입 후 업데이트되지 않습니다.

다음으로 entityView1에 설정된 관계에 즉시 액세스하여 표시 할 관계가 있는지 확인하기 위해 TableView를 다시로드합니다. 비록 내가 refreshObject를 호출하더라도, 관계 집합의 개수는 항상 0입니다. 내 응용 프로그램을 다시 시작하면 개수가 정확하며 entity1에 대한 관계가 올바르게 설정되었음을 알 수 있습니다.

내가 여기 잘못 생각한가요? 내 데이터 모델에서 다른 엔티티와 비슷한 코드를 수행하고 있으며이 문제가 발생하지 않았습니다. 뭔가 이상하게 동기화되지 않습니다.

감사합니다.

답변

0

관계를 설정할 때 동일한 entity1 객체를 참조하고 있습니까? 테이블 컨트롤러에서 가져올 때와 가져 오기를 수행 할 때 URI 표현을 인쇄하여 확인할 수 있습니다.

이것은 별도의 MOC 인스턴스를 사용하여 첫 번째 가져 오기 및 가져 오기 작업을 수행 한 결과 일 수 있습니다 (올바른 방법 일 수도 있음). 가져 오기 루틴에 대해 더 자세히 설명하면 도움이 될 수 있습니다.

업데이트 : (아래 코멘트에 답변)

. 양방향 관계는 양방향으로 설정되어야합니다. 예를 들어 :

// set citation's owner 
[citation setOwner:owner]; // or: citation.owner = owner; 
// add citation to owner's citations 
[owner addCitationsObject:citation]; 
+0

나는 카운트를 받고있을 때 관계 설정 중에도 동일한 entity1 객체를 참조하고 있음을 확인했습니다. – toofah

+0

나는 원래의 가져 오기와 관계 설정에도 같은 MOC를 사용하고 있습니다. – toofah

+0

흥미로운 점 중 하나는 어떤 관계가 설정되기 전에 객체의 관계가 다음과 같이 표시된다는 것입니다 : citations =(); – toofah

0

가있는 새로운 개체가 삽입되는 동일한 MOC의 관계를 설정?

관련 문제