![](/img/trans.png)
[英]Decoding JSON nested dictionary using Decodable and storing it using Core Data
[英]Struct with nested data using Decodable
我正在使用Alamofire在Swift 4中使用API。 我正在使用结构来创建我希望在该响应中使用的数据的模型,并确认使用Decodable。
我的回应看起来像是...
{
"pagination":{
"per_page":50,
"items":3909,
"page":1,
"urls":{
"last":"https://api.discogs.com/database/search?q=ed+rush&per_page=50&secret=foo&page=79&key=bar",
"next":"https://api.discogs.com/database/search?q=ed+rush&per_page=50&secret=foo&page=2&key=bar"
},
"pages":79
},
"results": []
}
我的模型如下所示...
struct SearchResults: Decodable {
let pagination: SearchPagination
let results: [SearchResult]
}
struct SearchResult: Decodable {
let type: String
}
struct SearchPagination: Decodable {
let per_page: Int
let items: Int
let page: Int
let pages: Int
}
我想了解的是,由于urls
是嵌套对象本身,因此我将如何对分页进行建模。 我是只为urls
创建结构还是在这里遗漏了明显的东西?
也许结构不是最好的方法? 我来自JS背景,结构感觉非常像TypeScript中的接口,但是我知道我可能在这里丢失了一些东西。
Decodable
的“规则”是,任何字典{}
将成为结构/类,而每个键都将成为属性。
struct SearchPagination: Decodable {
let per_page: Int
let items: Int
let page: Int
let pages: Int
let urls: URLData
}
struct URLData: Decodable {
let last, next : URL
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.