Посмотрите, какие данные осталось декодировать через декодер - PullRequest
0 голосов
/ 13 июня 2018

Я работаю в проекте Swiftt 4, где используется Codable.Однако я получаю следующую ошибку:

No value associated with key CodingKeys(stringValue: "postable_type", intValue: nil) ("postable_type").

Теперь мне интересно, как лучше всего отладить это.Есть ли возможность увидеть, какие данные Codable пытается втиснуть в мою модель?Тем более, что в этом случае используется довольно продвинутая раскладка, я считаю, что это было бы настоящим спасением здесь ...

Спасибо :))

1 Ответ

0 голосов
/ 13 июня 2018

Codable ошибки очень наглядны.Для отладки используйте этот блок catch для получения подробных сообщений об ошибках:

} catch DecodingError.dataCorrupted(let context) {
    print(context)
} catch DecodingError.keyNotFound(let key, let context) {
    print("Key '\(key)' not found:", context.debugDescription)
    print("codingPath:", context.codingPath)
} catch DecodingError.valueNotFound(let value, let context) {
    print("Value '\(value)' not found:", context.debugDescription)
    print("codingPath:", context.codingPath)
} catch DecodingError.typeMismatch(let type, let context)  {
    print("Type '\(type)' mismatch:", context.debugDescription)
    print("codingPath:", context.codingPath)
} catch {
    print("error: ", error)
}

И debugDescription, и codingPath точно скажут вам, что не так и где.

...