Разбор вложенного объекта с помощью Object Mapper в Swift 4 - PullRequest
0 голосов
/ 01 марта 2019

У меня есть ответ в формате JSON, как показано ниже

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

Я хочу получить подробную информацию о «дате» и «числе» напрямую.без разбора отдельно XYZ, ABC, PQR и детали.

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

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

Я должен разобрать до PQR.После этого я не могу разобрать.Не могли бы вы дать мне знать, как получить "детали" после анализа до PQR ??

ИЛИ

Дайте мне знать, как получить синтаксический анализ непосредственно по числу?Я пытался много раз, но не смог этого сделать.

1 Ответ

0 голосов
/ 01 марта 2019

Вы не можете проанализировать вложенные данные после 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 как массив, а затем проанализировать отдельные элементы в нем

...