gpt4 book ai didi

ios - 我如何在 objectmapper 中拥有自定义(计算)属性?

转载 作者:行者123 更新时间:2023-11-28 15:50:27 24 4
gpt4 key购买 nike

我正在为我的项目使用 Objectmapper 和 Realm。

我有一个对象如下

class File
{
dynamic var name
dynamic var folder
dynamic var path // This is not coming from JSON // this should be combination of both name+folder
}

我想写一个计算属性来实现这个,但是 Realm 不支持计算属性作为主键。

但我应该使用它作为主键。在来自服务器响应之后,有什么方法可以操纵以添加该值。

注意:我使用的是 AlamofireObjectMapper。

我正在使用以下方法解析服务器响应并为我提供模型对象。

 Alamofire.request(router).responseObject{ (response: DataResponse<T>) in
{
let myModel = response.result.value // Parsed object
===== What can i do here to achieve my requirement=====
}

最佳答案

你真的应该考虑将某种 id 作为主键而不是从其他属性计算它(如果它们为空或计算出错会发生什么?你会没有有效的主键)。

但是,如果你真的需要,你可以试试

let realm = try Realm()
try realm.write {
items.forEach({ (item) in
item.path = item.name + item.folder
}
realm.add(items, update: true)
}

并且不要忘记将 path 定义为 File 类中的主键:

class File
{
dynamic var name
dynamic var folder
dynamic var path // This is not coming from JSON // this should be combination of both name+folder

override static func primaryKey() -> String? {
return "path"
}
}

关于ios - 我如何在 objectmapper 中拥有自定义(计算)属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42340966/

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