2016-09-24 119 views
1

试图ObjectMapper语法转换为雨燕3.0:问题调用父类方法在ObjectMapper

class CustomJsonResponse: Mappable { 

    var status: String? 
    var response: String? 
    var errorCode: CustomErrorCode? 

    init() { 

    } 

    required init?(map: Map) { 

    } 

    func mapping(map: Map) { 
     status <- map["status"] 
     response <- map["response"] 
     errorCode <- (map["error_code"], CustomErrorCodeTransform()) 
    } 
} 

class CustomChallengesResponse: CustomJsonResponse { 

    var challenges: [CustomChallenge]? 

    required init?(_ map: Map) { 
     super.init(map: map) 
    } 

    override func mapping(map: Map) { 
     super.mapping(map: map) 

     challenges <- map["data.questions"] 
    } 
} 

我在得到一个错误:

required init?(_ map: Map) { 
      super.init(map: map) 
     } 

“需要初始化器必须由子类来提供CustomJsonResponse“

我在做什么错在这里?任何指针都会很棒。谢谢!

+0

什么是地图,是它的模型对象? 如果是这样你实现了任何init方法? – Janmenjaya

+0

ObjectMapper的版本是什么?你得到编译器错误或运行时错误? – wint

+0

@wint版本2,0。编译器错误。 – KexAri

回答

0

我认为你缺少:

init() { 
    super.init() 
}