在我的CoreData版本中,我可以写
MyLable
其中联系人的类型为[NSManagedObject]。在Realm中,这会导致崩溃:"不能在写入事务之外改变持久化数组。"
我不想保留doubledContacts,因此我不需要写入事务。我想要的只是一个新的集合,每个联系人都包含两次。
我如何在Realm中解决这个问题?
答案 0 :(得分:1)
最简单的解决方案是拉出阵列中的所有联系人:
let contactsArray = contacts.map { $0 }
let doubledContacts = contactsArray + contactsArray
但请注意:这会将List
(或Results
)的延迟语义设置为无效,并导致您将所有对象实例拉入映射内存。