2017-11-26 9 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で文字列あるとき、nilを返します。
だから私はTrasformOfの使用していたが、IDはのIntは私にクラッシュして別の問題を示しているあるとき。
これを修正するには?

+0

マークIDは任意で、idがStringの場合はlikeを使用しているときにタイプをチェックします{"id is String"} – suhit

答えて

0

2つの選択肢があります。 TransformOf<Int, Any>にして、タイプを確認してください。または、String型のプライベートプロパティを作成します。値がnilでない場合は、idに変換された値を設定します。 Thisはあなたと同じ問題ではありませんが、問題の解決に役立つ可能性があります。

関連する問題