BaseObject, который может иметь NSObject, Mappable и Object swift - PullRequest
0 голосов
/ 02 ноября 2018

У меня есть BaseRequestObject типа NSObject, Mappable, который наследуется объектом с именем User. Мне нужно сохранить этот объект User внутри realmDB.

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 для хранения как в realmDatabase, так и для использования в качестве обычного объекта. Я использую этот же объект для анализа данных alamofire в userObject.

1 Ответ

0 голосов
/ 02 ноября 2018

Нет необходимости заставлять BaseRequestBody наследовать от NSObject, Object наследовать от RLMObjectBase, который наследуется от NSObject, поэтому простое создание BaseRequestBody подкласса Object также сделает его подкласс NSObject.

class BaseRequestBody: Object,Mappable {
...
}

Не имеет отношения к вашей проблеме, но нет необходимости использовать ObjectMapper для декодирования вашего объекта из JSON, вы можете просто использовать протокол Decodable.

...