在 Swift 4 中使用对象映射器解析嵌套对象

Parse Nested Object using Object Mapper in Swift 4

我有 JSON 如下回复

{
    "XYZ": {
        "ABC": {
            "PQR": [
                {
                    "details": {
                        "date":1221,
                        "number": 30
                    }
                }
            ]
        }
    }
}

我想直接获取 "date" 和 "number" 的详细信息。无需单独解析 XYZ、ABC、PQR 和详细信息。

struct Trial: Mappable {
    var PQR!
    init() {}
    init?(map: Map) {}

    mutating func mapping(map: Map) {
        trialPeriod <- map["XYZ.ABC.PQR"]    
    }
}

我要解析到 PQR。在那之后,我无法解析。你能告诉我如何在解析到 PQR 后得到 "details" 吗??

让我知道如何将解析直接解析为数字?试了很多次都不行

您无法解析嵌套在 PQR 之后,因为它是 JSON 数组而不是 JSON 对象。所以,如果你确定它只是数组的第一个元素,你可以做类似的事情。

struct Trial: Mappable {
    var PQR!
    init() {}
    init?(map: Map) {}

    mutating func mapping(map: Map) {
        trialPeriod <- map["XYZ.ABC.PQR.0.details.date"]
    }
}

注意.0,它表示数组中的第一项。

或者,更好的是,尝试将 XYZ.ABC.PQR 解析为数组,然后解析其中的各个项目