gpt4 book ai didi

swift - ObjectMapper toJSON() 快速

转载 作者:行者123 更新时间:2023-11-30 10:45:07 25 4
gpt4 key购买 nike

我有一个对象,在 init func 中有一些属性,在将数据从 JSON 解析为对象时,它做得很好,但在将对象转换为 JSON 时,我找不到将该数据转换为 JSON 的方法

以下是我正在使用的代码

var sOWSubCategory: SowSubCategoryModel?
var reportDisplayId : String?

required init?(map: Map){
sOWSubCategory = SowSubCategoryModel(sOWSubCategoryID: map.JSON["SOWSubCategoryID"] as? Int, sOWSubCategoryNameAr: map.JSON["SOWSubCategoryNameAr"] as? String, sOWSubCategoryNameEn: map.JSON["SOWSubCategoryNameEn"] as? String)
sOWSubCategoryDetail = SowSubCategoryDetailListModel(sOWSubCategoryDetailID: map.JSON["SOWSubCategoryDetailID"] as? Int64, sOWSubCategoryDetailAr: map.JSON["SOWSubCategoryDetailNameAr"] as? String, sOWSubCategoryDetailEn: map.JSON["SOWSubCategoryDetailNameEn"] as? String)
}
func mapping(map: Map) {
reportDisplayId <- map["ReportDisplayID"]
}

reportDisplayId 正在转换为 JSON,但 sOWSubCategory 和 sOWSubCategoryDe​​tail 未转换为

最佳答案

ObjectMapper 将从下面的 mapping(map: Map) 方法中使用的对象属性进行映射

func mapping(map: Map) {
reportDisplayId <- map["ReportDisplayID"]
}

由于 reportDisplayId 是在 mapping(map: Map) 方法中映射的唯一属性,因此您将使用此键值获取 JSON仅有的。您应该使 SowSubCategoryModelSowSubCategoryDe​​tailListModel 符合 Mappable 并通过 mapping 方法映射这些对象,这样您就可以获得所需的JSON。

<小时/>

如果您想保持 SowSubCategoryModelSowSubCategoryDe​​tailListModel 的映射与所讨论的相同,那么您可以通过添加在模型中实现 toJSON 方法sOWSubCategorysOWSubCategoryDe​​tail JSON 如下,

func toJSON() -> [String : Any] {
var finalJSON = self.toJSON()


var sOWSubCategory = sOWSubCategory.toJSON()
var sOWSubCategoryDetail = sOWSubCategoryDetail.toJSON()

sOWSubCategory.forEach {
finalJSON[$0.0] = $0.1
}

sOWSubCategoryDetail.forEach {
finalJSON[$0.0] = $0.1
}

return finalJSON
}

关于swift - ObjectMapper toJSON() 快速,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55887659/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com