2017-11-26 15 views
0

나는이 같은 JSON을 구문 분석 할 :Swift 4에서 알 수없는 서버 데이터 유형을 가진 Object Mapper를 등록하는 방법은 무엇입니까?

let JSONString = "{\"id\":23,\"title\":\"Saramon\"}" // id is Int 
let JSONString = "{\"id\":\"23\",\"title\":\"Saramon\"}". //id is String 

class Category: Mappable { 

    var id:Int? 
    var title:String? 

    //Mark - Mappable 
    required convenience init?(map: Map) { 
     self.init() 
    } 

    func mapping(map: Map) { 
     id    <- map["id"] 
     title   <- map["title"] 
    } 
} 

그러나 ID은 JSON에서 문자열 때, 전무를 반환합니다.
그래서 나는 TrasformOf의 사용하지만 ID지능을 때 나에게 충돌 또 다른 문제를 보여입니다했다.
해결 방법?

+0

기호 ID가 Any이고 ID가 String 인 경우 like를 사용하는 동안 유형을 확인하십시오. ""id is String "} – suhit

답변

0

두 가지 옵션이 있습니다. TransformOf<Int, Any>을 입력하고 유형을 확인하십시오. 또는 String 유형의 private 속성을 만듭니다. 그러면 update가 0이 아닌 경우 id을 변환 된 값으로 설정합니다. This은 문제가 아니지만 문제를 해결하는 데 도움이 될 수 있습니다.