如何使用ObjectMapper映射子类? 我使用swift 2.2和Hyphe,以此为例,但它没有使用子类https://bitbucket.org/hyphe/blog-examples/src/59f61b2d8e68c7d3630b40964c4fe3c191d60de6/fetchData/iOS-TechPost1/?at=master 例如,我的API正在提取课程标题'和海报',但对于海报'我需要它来找到子类' src。
我的班级'海报'是我的数组中的一个子类" images"。例如我正在拉的Json是:
"title" : "Election",
"poster" : {
"src" : "https://example.site/image"
"alt" : ""
}
我班的快速文件是:
import Foundation
import RealmSwift
import ObjectMapper
import Foundation
import RealmSwift
import ObjectMapper
protocol Meta {
static func url() -> String
}
class Specimen: Object, Mappable, Meta {
dynamic var title = ""
dynamic var poster = ""
}
//Impl. of Mappable protocol
required convenience init?(_ map: Map) {
self.init()
}
func mapping(map: Map) {
title <- map["title"]
poster <- map["poster"]
}
//Impl. of Meta protocol
static func url() -> String {
return "https://example.site/data"
}
}
我已经尝试了以下选项,但它们不起作用: 海报&lt; - 地图[&#34;海报{src}&#34;] 海报&lt; - 地图[&#34;海报&#34; [&#34; src&#34;]]
非常感谢您的帮助!有任何想法吗?
答案 0 :(得分:2)
根据我的理解,您正在尝试使用ObjectMapper将嵌套的json对象映射到Swift对象的属性。 ObjectMapper支持点符号。请查看文档here。
在这种情况下,正确的语法是:poster <- map["poster.src"]
。