swift - 让 Realm 和 Unbox 玩得更好

标签 swift realm unboxing

我正在学习在 Swift 中解析来自 Android/Java 的 JSON,我正在使用 John Sundell 的 Unbox 来帮助我解决这个问题,这让我想起了 GSON。 引用:Unbox pod

我使用 Realm 作为数据库在本地存储数据。 引用:Realm.io

如果能找到一个用JSON解析类并保存到Realm的工作流就好了。我不想有一个实现 Unboxable 的结构和一个实现 Object (Realm) 的类,因为那样我就必须反射(reflect)这两者。这对我当前的项目来说不算太多,但有点难看...

你们中有人尝试过类似的工作流程吗?

最佳答案

我认为您不需要两种不同的类型。我的建议是将您的对象创建为继承自 Realm 的 Object 类的 Swift 类,然后使它们符合 Unbox 提供的 Unboxable 协议(protocol)。 (尽管 Unbox 页面上的示例使用结构模型,但代码或文档中没有任何内容表明类不起作用。)

Realm 模型对象就像任何其他类一样工作:除了定义您希望存储在数据库中的对象的任何属性外,您还可以定义方法和初始化器,甚至指定您希望 Realm 忽略的属性。这允许您创建一个对象,既可以用作 Realm 模型,也可以用作与 Unbox 兼容的 JSON 模型。

关于swift - 让 Realm 和 Unbox 玩得更好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37734574/

相关文章:

iOS 在 uitableview 单元格中设置图像宽度

ios - 如何在 Realm 数组的特定索引处插入对象?

java - 拆箱 - 与单独拆箱相比,它如何成为显式使用 intValue() 的更好方法

.net - 装箱和拆箱是否有相同的性能影响?

Java · 使用 lambda 对原始矩阵进行装箱和拆箱

ios - 从我的应用程序打开设置然后处理复出事件

IOS Swift - 无需 Storyboard 即可导航至主屏幕

ios - 使用 Realm 和结果 JSON

android - Realm:根据列表属性包含特定元素进行查询

json - 更新到 Xcode 8.1 : Can no longer convert JSON data of type AnyObject to expected Type