Realm数据库保存了什么?只有变量或函数?

时间:2018-02-23 11:36:46

标签: swift realm

在这个简单的课程中:

class Simple: Object{
    @objc var name: String = ""

    func doSomething(){}
}

当我将其保存到Realm中时,会保存什么?仅变量或函数?我问这个的原因是因为当我得到很多简单的对象时,我不想保存课程的功能。对象会变得更大,从而对性能产生负面影响。

2 个答案:

答案 0 :(得分:0)

变量。它创建一个名为“name”的“列”。查看realm docs

此外,如果您有大量数据并且想要浏览它,您可以使用此Realm Browser进行浏览,您可以清楚地看到您的领域数据库结构。

答案 1 :(得分:0)

您应该阅读官方文档,特别是the part about supported model properties,它明确提到了您可以在Realm对象中保留的内容。

您只能保存某些受支持类型(IntString等)的属性或对其他Realm对象的引用(作为一对一,一对多或反对关系) ),但你无法保存函数引用,反正它也没有意义。

您可以将忽略的属性和函数添加到Realm模型类中,但它们只存在于内存中,它们不会保存到Realm中。对于功能而言,这就是你真正需要的,将功能保存到本地存储是没有意义的。

此外,您当前的模型存在缺陷,因为您的name属性在其声明中缺少dynamic关键字,因此无法将其视为Realm属性。