如何在同一领域中添加相同的对象类型作为不同的表?

时间:2016-02-02 04:43:34

标签: ios realm

我正在使用领域来缓存某些特定于上次搜索的网络数据。我还希望能够将这些数据加注星标或固定以保存以备将来使用。数据对象完全相同,我在文档中找不到任何允许我将它们保存在Realm的单独表中的内容。

1 个答案:

答案 0 :(得分:3)

最简单的方法是简单地使用不同的名称创建模型对象的子类(例如,MyDataObject及其子类MySavedDataObject)。这将在Realm数据库文件中创建一个具有相同模式的新表,并允许您区分这两种类型的对象。

然后,您可以将普通对象的副本创建为已保存的对象,如下所示:

let myNewSavedObject = MySavedDataObject(value: myDataObject)

尽管如此,我个人建议使用现有的数据集,而不是复制数据。当然,只需在名为saved之类的模式中添加一个额外的布尔属性,就可以简单地标记要保留的对象而无需整个第二个表。 :)