【发布时间】:2017-11-02 16:53:09
【问题描述】:
我有以下类,我想编写一个扩展方法来轻松地将我的 JSON 序列化为。
class Evaluation: Object {
var name: String?
var isFinalized: Bool?
var id: Int?
var idString: String? {
get{
return String(describing:self.id!)
}
}
convenience init(json: JSON?) {
self.init()
if let json = json {
name = json["evaluationDescription"].rawString()
isFinalized = json["evaluationFinalized"].intValue == 0 ? false : true
id = json["evaluationID"].intValue
}
}
override static func primaryKey() -> String? {
return "id"
}
}
这是我编写的扩展,但我希望它能够变异并且更全局可用。这样我就可以对所有模型使用相同的代码。
extension Evaluation {
func serialize(from json: JSON){
var temp = [Evaluation]()
for (_,j): (String,JSON) in json {
temp.append(Evaluation(json: j))
}
}
}
我尝试制作mutating的方法,但是出错了
'mutating' 对类中的方法无效...
总而言之,我想这样使用它(json有点伪代码)...
var json = "{'name':'test','isFinalized','0','id':'532'}"
var evaluations = [Evaluations]()
evaluations.serialize(from: json)
【问题讨论】:
标签: swift realm swifty-json