문제가 있습니다. 여러 사용자가 로그인하여 로컬로 데이터를 저장할 수 있도록 허용해야하는 iOS 클라이언트 앱이 있습니다. 데이터가 RESTful 서비스와 동기화되며 사용자의 변경 사항과 함께 최신 스냅 샷을 모든 사용자에게 로컬로 저장해야합니다.RESTkit, CoreData : CoreData로 trasferring하기 전에 바로 처리하십시오.
이전에이 응용 프로그램은 데이터 스토리지 엔진으로 SQLlite로 구현되었습니다. 이제 CoreData로 마이그레이션하고 싶습니다.
는 어떻게해야합니까 :
- 서버는 현재 사용자 나에게 개체를 반환합니다. 사용자가 승인하고 세션을 가져올 때 사용자 ID는 전송되지 않습니다.
- 로그인 한 사용자가 알고있는 특정 사용자의 모든 데이터를 저장해야합니다. 그것을하기 위해서 나는 ID = 12345를 가진 사용자를 위해 객체를 저장하기 위해 CoreData를 말할 필요가있다.
문제는 :
- 내가 특정 사용자의 ID와 연관된 특정 개체를 저장하는 CoreData에게 있습니다.
- 어떻게 든 RESTkit으로 매핑 된 객체를 변경하는 방법이 필요합니다. 적절한 ID 필드를 설정해야합니다.
이 작업은 SQLlite에서는 직선적이며 간단하지만 CoreData에는 문제가 있습니다. CoreData가 명확한 설명이나 유용한 링크로 나를 도와달라고 요청하는 것에 대해 아직 모른다고 생각합니다.
어떤 요청을 하시겠습니까 (경로/매개 변수/소스 객체의 사용자 ID가 어딘가에 있습니까?). – Wain
@Wain 사용자 ID가 없습니다. 우리는 임시 액세스 토큰을 사용하여 서버와 통신합니다 (보통은 그렇듯이). 로그인 이름으로 사용자를 로컬로 식별합니다. – DaddyM
그래서 좋은 방법이 아닙니다. 해키, 요청에 매개 변수로 ID를 추가 할 수 있으므로 다시 매핑 할 수 있습니다 (RestKit dev 분기 필요). non-hacky는 매핑 결과에 반환 된 객체를 업데이트하고 다시 저장하는 것입니다. – Wain