0

핵심 데이터를 사용하고 있고 내 모델에 NSManagedObjectContext 하위 클래스가 있습니다. viewDidLoad코어 데이터 : 코어 데이터에 데이터를 삽입하는 동안 중복을 피하는 방법

: 나는 핵심 데이터에서 가져 오기 위해 노력하고

  1. .

  2. 또한 모델 호출을 시작하면 모델 개체가 핵심 데이터로 저장되고 다시 가져와 UI를 업데이트합니다.

I 넣은 경우 I 직면 한 문제는 각 viewDidLoad I는 N/w 호 내지 4의 결과가있는 경우 I 데이터는, I는 동일한 4 개 결과의 2 개 세트를 가질 것이다 의미 또 다시 첨가했다에 두 번째보기 등등.

네트워크 페치 결과를 저장하기 전에 수동으로 복제를 확인하여이 문제를 방지했습니다.

깨끗한 방법이라고 생각하지 않으며 UICollectionViewNSFetchedResultsController을 사용하여 가져 오기를보다 효율적으로 만들고 싶습니다.

어쨌든 NSFetchedResultsController을 사용하면 문제를 피할 수 있습니까?

또한 사람이 AFIncrementalStore을 시도했거나 핵심 데이터에 대한 래퍼를 SSDataKit? 어떤 제안이 더 좋을까요?

답변

0

사용할 수있는 경우 RestKit을 사용하면됩니다. 그러나 기본적으로 같은 일을합니다. 중복 검사를 빠르게 수행 할 수있는 캐싱 옵션을 제공하지만 어딘가에 수표가 있어야합니다.

FRC가 중복 검사를 어떻게 도와 줄 수 있는지 잘 모르겠습니다. 페치 요청을 사용하여 적절한 식별 속성 만 포함하는 사전 결과를 얻을 수는 있지만 전체 FRC는 아닐 수도 있습니다.

핵심 데이터 자체에는 '중복'개념이 없습니다. 권장 사항에 대해서는 Apple 설명서 섹션 '효율적으로 찾기 또는 만들기 구현하기'here을 참조하십시오.

+0

그렇다면 이러한 중복 방지는 코어 데이터 래퍼를 통해서만 사용할 수 있으며 코어 데이터에는 직접 사용할 수 없다는 뜻입니까? 또한 옵션 SSDataKit과 AFIncrementalStore 몇 가지를 살펴 보았습니다. 어느 것이 가장 적합한 것인지 알 수 있습니까? – jaishankar

관련 문제