BaseObject可以有NSObject,Mappable和Object swift

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BaseObject可以有NSObject,Mappable和Object swift相关的知识,希望对你有一定的参考价值。

我有一个类型为NSObject的BaseRequestObject,Mappable,它由一个名为User的对象继承。我需要在realmDB中保存这个User对象。

class BaseRequestBody: NSObject,Mappable {
override init() {

}

required init?(map: Map) {

}

func mapping(map: Map) {

}

}

UserObject,其中包含BaseRequestBody: -

class User: BaseRequestBody {
var id : String?
var name : String?    

override init() {
    super.init()
}

required init?(map: Map) {
    super.init(map: map)
}

override func mapping(map: Map) {
id     <- map["id"]
name   <- map["name"]
}
}

如何使用此User对象存储在领域数据库中并用作普通对象。我使用同一个对象将alamofire数据解析为用户Object。

答案

没有必要让BaseRequestBody继承自NSObjectObject继承自RLMObjectBase,继承自NSObject,所以简单地使BaseRequestBody成为Object的子类也将使它成为NSObject的子类。

class BaseRequestBody: Object,Mappable {
...
}

与您的问题无关,但不需要使用ObjectMapper从JSON解码您的对象,您可以简单地使用Decodable协议。

以上是关于BaseObject可以有NSObject,Mappable和Object swift的主要内容,如果未能解决你的问题,请参考以下文章

如何根据key修改NSMutableArray中的值

如何正确组织一组班级?

JSON 到 NSObject 模型工具

NSObject

NSObject

如何发布自定义 NSObject 属性以保存 MySQL