【发布时间】:2016-06-15 11:54:54
【问题描述】:
我正在从 Web 服务获取此 JSON 响应。我能够理解文件的结构。
{"response":200,"message":"fetch successfully","data":[
{"id":1,"question":"Are you currently exercising regularly?","choices":{"too_lazy":"Too lazy","times_1_3_week":"1-3 times a week","i_love_it":"I just love it!"},"answer_select":"single"},
{"id":2,"question":"Are you active member of Gym?","choices":{"yes":"Yes","no":"No"},"answer_select":"single"}]
}
这就是我目前所拥有的
import Foundation
import UIKit
import ObjectMapper
class YASUserQuestion: Mappable {
var question: String
var id: Int
var choices: [YASExercisingQuestionChoices]
required init?(_ map: Map) {
question = ""
id = 0
choices = []
}
func mapping(map: Map) {
question <- map["question"]
id <- map["id"]
choices <- map["choices"]
}
}
class YASExercisingQuestionChoices: Mappable {
var tooLazy: String
var times_1_3_Week: String
var ILoveIt: String
required init?(_ map: Map) {
tooLazy = ""
times_1_3_Week = ""
ILoveIt = ""
}
func mapping(map: Map) {
tooLazy <- map["too_lazy"]
times_1_3_Week <- map["times_1_3_week"]
ILoveIt <- map["i_love_it"]
}
}
class YASGymMemberQuestionChoices: Mappable {
var yes: String
var no: String
required init?(_ map: Map) {
yes = ""
no = ""
}
func mapping(map: Map) {
yes <- map["yes"]
no <- map["no"]
}
}
我不确定如何映射此 JSON 响应,请指导我如何映射此 JSON ???
【问题讨论】:
-
你是如何从服务器获取 JSON 的,我的意思是你是获取它并将其保存为 [String: AnyObject] 的字符串或字典,还是使用 SwiftyJSON 之类的辅助库?
-
我看到一个问题:在您的 JSON 中,“choices”是一个字典,但您已经在代码中声明了一个数组。
标签: ios json swift objectmapper