【发布时间】:2021-07-05 06:06:03
【问题描述】:
我的 JSON 响应如下所示:
"result": {
"data": {
"open": [
{
"user_id": "10",
"request_title": "Title-2",
"category": "4"
}
{
"user_id": "10",
"request_title": "Title-2",
"category": "4"
}.....
]
为此我创建了这样的模型:
对于模型中的每个对应值,我将像这样创建:
public class Result {
public var status : Status?
public var data : PostedData?
public class func modelsFromDictionaryArray(array:NSArray) -> [Result]
{
var models:[Result] = []
for item in array
{
models.append(Result(dictionary: item as! NSDictionary)!)
}
return models
}
required public init?(dictionary: NSDictionary) {
if (dictionary["status"] != nil) { status = Status(dictionary: dictionary["status"] as! NSDictionary) }
if (dictionary["data"] != nil) { data = PostedData(dictionary: dictionary["data"] as! NSDictionary) }
}
public func dictionaryRepresentation() -> NSDictionary {
let dictionary = NSMutableDictionary()
dictionary.setValue(self.status?.dictionaryRepresentation(), forKey: "status")
dictionary.setValue(self.data?.dictionaryRepresentation(), forKey: "data")
return dictionary
}
}
这是 PostedData:
public class PostedData {
public var open : [Open]?
public var all : [All]?
required public init?(dictionary: NSDictionary) {
if (dictionary["open"] != nil) { open = Open.modelsFromDictionaryArray(array: dictionary["open"] as! NSArray) }
if (dictionary["all"] != nil) { all = All.modelsFromDictionaryArray(array: dictionary["all"] as! NSArray) }
}
}
public class Open {
public var user_id : String?
public var request_title : String?
}
我能够得到 JSON 响应.. 但无法添加模型
我收到 JSON 响应:
var postModel: PostedServiceBase?
if let code = ((resp.dict?["result"] as? [String : Any])){
// here i am trying to add JSON resp to model
self?.postModel = PostedServiceBase(dictionary: resp.responseDict as? NSDictionary ?? NSDictionary())
let totalData = code["data"] as? [String : Any]
if let open = totalData?["open"] as? [[String : Any]]{
for (value) in open {
}
}
在这里我需要将 open 数组值添加到 servicesArray.. 但我怎么做不到
self?.servicesArray.append(ServicesModel(header: self?.allValues?.request_title, title: self?.allValues?.request_title, userId: self?.allValues?.userid))
请。确实有助于使用模型将 JSON 值添加到数组中......在这种情况下我不能使用可编码的协议
【问题讨论】:
-
对于那些试图帮助您删除old 问题但几个小时后再次重新发布的人来说,这是非常粗鲁的。
-
在调用 API 的地方创建一个具有该模型类型的变量并将响应分配给该变量,希望对您有所帮助