Project
및 Path
이라고 말합니다. Project
에는 여러 경로가 있습니다 (선택 사항). Paths
은 많은 프로젝트 (non-optional, min = 1)에 속할 수 있습니다. Path
에 연결된 마지막 Project
을 보관하는 경우 Path
도 보관해야합니다. 그러나 Path
이 다른 활성 프로젝트에 속한 경우 보관하지 마십시오.코어 데이터 마지막 자식 개체에 대한 다 대다 케스케이드 보관 (휴지통)
"보관"은 archivedDate
속성을 설정하는 것과 같습니다.
내 유일한 접근 방식은 영구적 인 스택이 코어 데이터 알림 (어떤 것이 확실하지는 않지만)을 구독하고 저장시 영향을받는 Path
개체를 검사하고 보관 규칙을 적용하는 것입니다.
"캐스케이드"보관을 구현하려면 어떻게해야합니까?
값을 설정하면 부작용이 생기지 않습니다. 클린업 단계는 KVO를 사용하는 것입니다. 나는'activeProjects'가 지금까지 필터링을 설정하는 것을 좋아합니다! – ctietze
값을 논리적으로 설정하면이 효과가 발생하므로 ** 설정자를 재정의하는 데 "편안함"을 느껴야합니다. 이것은 코어 데이터 객체 그래프 관리에서 매우 공통적 인 패턴입니다. – Mundi