2017-05-17 5 views
4

내 문제의 배경부터 시작합시다. Object Mapper 클래스를 사용하여 코어 데이터에 데이터 저장

나는 다른에 내가 CoreData

 @objc(Event) 
     class PersonMO: NSManagedObject { 

     @NSManaged var ID : String? 
     @NSManaged var firstName : String? 
     @NSManaged var lastName : String? 

    } 

지금 제공에 레코드를 저장하는 데 사용되는 다른 클래스 이름 PersonMO을 가지고 있지만 JSON 응답

class Person: NSObject, Mappable { 

     var ID : String? 
     var firstName : String? 
     var lastName : String? 

     convenience required init?(map: Map) { 
       self.init() 

      } 

      func mapping(map: Map) { 
       patientsCount <- map["patientsCount"] 
       status <- map["status"] 
       message <- map["Message"] 
       patientSearchArray <- map["patientsList_JSON"] 
      } 
    } 

을 구문 분석하는 데 사용되는 Person 클래스가 주요 지점으로. 내가 직면하고있는 문제는 하나의 목적을 위해 두 개의 다른 클래스를 만들어야한다는 것입니다. 마치 JSONServer Side 양식을 제공 할 때 Person 클래스로 구문 분석 한 다음 Person 클래스 개체를 Person 클래스 개체로 변환해야한다는 이유로 PersonCore Data에 저장하고 싶습니다. 어느 것이 나쁜 습관 인 것 같아. 하나의 클래스를 사용하는 방법이 있습니까 PersonJSON을 구문 분석하는 동시에 해당 Person 클래스를 사용하여 핵심 데이터에 데이터를 저장하려고합니다.

+0

ObjectMappper가이 기능을 지원하지 않는 것 같습니다. 그러나 ObjectMappper는 오픈 소스이므로 수정하고 변경 요청을 보내서 변경 사항을 통합 할 수 있습니다. –

+0

혹시이 문제에 대한 해결책을 찾았습니까? 그렇다면 동일한 문제를 겪고 있기 때문에 공유하십시오. – rmp

답변

0

단일 Person 클래스가 충분해야하며, 두 경우 모두를 제공해야합니다.

class Person: NSManagedObject, Mappable { 

@NSManaged var ID : String? 
@NSManaged var firstName : String? 
@NSManaged var lastName : String? 

convenience required init?(map: Map) { 
    self.init() 

} 

func mapping(map: Map) { 
    patientsCount <- map["patientsCount"] 
    status <- map["status"] 
    message <- map["Message"] 
    patientSearchArray <- map["patientsList_JSON"] 
} 
} 

NSManagedObject 그래서 그냥 맵핑이와 Person 클래스처럼 사용할 수 있습니다 NSObject의 서브 클래스입니다. @NSManaged은 CoreData에서 관리한다는 표시이지만 일반 변수처럼 사용할 수 있습니다.

+0

나는 이미이 방법을 시도했다. NSManagedObject를 Parent 클래스로 설정하면 NSManagedObject의 init 메소드를 구현해야하므로 init? (map : Map) 메소드는 호출하지 않습니다. 따라서 매핑 (map : Map)도 호출되지 않습니다. –

+0

매핑에 어떤 라이브러리를 사용하고 있습니까? init (map : Map) 호출 방법을 알고 싶습니다 –

+0

ObjectMappper를 사용하여 JSON 응답을 구문 분석하고 있습니다. –