更新克隆对象问题 Realm.io

Updating Cloned object issue Realm.io

我已经克隆了一个带有主键的 RealmObject,它创建的很好,但是当我更新时 克隆对象中的子对象,原始子对象也已更新,如何只更新克隆对象?

Model *originalModel =[[Model allObjects] firstObject]; //original model

Model *cloneModel = [[Model alloc] initWithValue:originalModel]; //clone model

RLMRealm *realm = [RLMRealm defaultRealm];


[realm beginWriteTransaction];
cloneActivity.uuid =  @"new uuid";

for (ScreenModel *page in cloneActivity.screens) {
 //this line is also updating the original object
page.execution_uuid = @"new uuid";

}
[ActivityTreeModel createInRealm:realm withValue:cloneModel];
[realm commitWriteTransaction];

当我进行简单更新时,所有 "originalModel" 子项也会更新

Realm's GitHub repo 中提交的相同问题所述:

Realm 尚不支持在使​​用 initWithValue:

时创建链接对象的独立副本

我们目前正在开发此功能,并在此拉取请求上取得进展:https://github.com/realm/realm-cocoa/pull/2043

同时,您必须手动执行复制以创建链接对象的副本。

此外,作为提醒,交叉发布问题是没有必要的。我们跟踪 SO 和 GitHub 问题。只发一个地方方便我们快速回复!