최근에 핵심 데이터를 읽고 많이 읽었으며 데이터 저장소를 구현하는 방식을 좋아합니다.코어 데이터 엔티티를 참조하는 가장 좋은 방법은 무엇입니까?
그러나 아직 내 앱에서 해결할 수없는 것이 하나 있습니다.
내 데이터 모델에는 사용자가 텍스트 필드에 삽입 한 텍스트 묶음을 나타내는 엔티티가 있습니다. 이 텍스트 척도를 참조하여 다른 텍스트 필드에 포함시킬 가능성을 사용자에게 제공 할 수 있기를 바랍니다. 내가 직접 데이터베이스로 작업 한 경우
, 나는 같은 것을 할 것입니다 :
- 사용자는 데이터베이스에있는 텍스트의 체크를 추가합니다. 행 색인
17
이 발생합니다. - 사용자는 데이터베이스의 텍스트 청크를 참조 할 수있는 기본 편집기로 돌아가서
{chunk.17}
과 같은 패턴을 삽입합니다. 여기서17
은 데이터베이스의 행 인덱스입니다. - 사용자가 "구문 분석"버튼을 클릭하면 앱이이 행의 데이터베이스를 쿼리하고 여기에 저장된 텍스트 청크 문자열
{chunk.17}
을 바꿉니다.
코어 데이터에는 자동 증가 인덱스와 같은 것이 없으므로 많은 작업없이 비슷한 동작을 만드는 방법을 모르겠습니다. 모든 아이디어를 높이 평가합니다!
를 응답 귀하의 코멘트 ... "코어 데이터는 자동 증가 인덱스 같은 것은이 없습니다"로. NSSQLiteStoreType을 사용하고 있고 NSManagedDocument를 사용하지 않고 데이터를 지속한다면, (터미널을 통해) SQLite db를 열고 데이터베이스를 검사 할 수 있습니다. 코어 데이터가 각 테이블을 생성 할 때 자동 증분 프라이 머리 키인'Z_PK INTEGER PRIMARY KEY'를 생성한다는 것을 알 수 있습니다. 코드에 직접 액세스 할 수는 없지만 존재하지는 않습니다. 귀하의 질문과 관련이 없으므로이 정보를 배경으로 제공하기를 원합니다. – andrewbuilder
귀하의 질문에 대한 답변으로, 귀하의 코드에서 액세스하고자하는 데이터 모델의 각 엔티티에 대한 NSManagedObject 하위 클래스를 준비하고 있습니까? – andrewbuilder
@andrewbuilder 예. Xcode에서 생성 한 클래스를 그대로 사용하고 카테고리를 사용하여 빌드합니다. –