作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为我的项目使用 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/
我是一名优秀的程序员,十分优秀!