[swift] ObjectMapper를 사용하여 JSON 데이터의 필드를 옵셔널로 처리하는 방법은?
  1. ObjectMapper 설치 ObjectMapper를 사용하기 위해 먼저 프로젝트에 ObjectMapper를 설치해야 합니다. CocoaPods를 사용한다면 Podfile에 다음과 같이 ObjectMapper를 추가합니다.
pod 'ObjectMapper'

그리고 터미널에서 pod install 명령을 실행하여 ObjectMapper를 설치합니다.

  1. 모델 클래스 생성 JSON 데이터를 매핑할 모델 클래스를 생성합니다. 예를 들어, User라는 클래스를 생성하고 필드를 옵셔널로 선언합니다.
import Foundation
import ObjectMapper

class User: Mappable {
    var name: String?
    var age: Int?
    
    required init?(map: Map) {}
    
    func mapping(map: Map) {
        name <- map["name"]
        age <- map["age"]
    }
}
  1. JSON 데이터 매핑 ObjectMapper를 사용하여 JSON 데이터를 모델 객체로 매핑합니다. 매핑할 JSON 데이터가 있다면 해당 데이터를 NSDictionary로 변환하거나 서버에서 받아온 데이터를 사용합니다.
import ObjectMapper

let jsonString = "{\"name\": \"John Doe\", \"age\": 25}"
if let user = Mapper<User>().map(JSONString: jsonString) {
    // 필드가 옵셔널로 처리되어 있으므로, nil 체크 없이 사용 가능
    print(user.name) // "John Doe"
    print(user.age) // 25
}

위의 예제 코드에서 User 모델 클래스의 nameage 필드는 옵셔널로 선언되어 있으므로, 해당 필드가 JSON 데이터에 존재하지 않더라도 매핑할 수 있습니다.