领域 - 删除对象后可以保存对象吗?

时间:2015-08-31 10:10:03

标签: ios swift realm

我想将一个对象添加到收藏夹中。 在这种情况下,当用户按下按钮将对象添加到收藏夹时,该对象将保存到领域。然后他按下一个按钮从收藏夹中删除对象,它将被删除。之后,他按下按钮再次保存,应该再次保存。 可以吗?

当我按两次保存按钮时,它会显示

Terminating app due to uncaught exception 'RLMException', reason: 'Object has been deleted or invalidated.'

代码如下所示。

func delete() {
realm.write({
    self.realm.delete(obj)
})
}
func save() {
    realm.write({
        self.realm.add(obj, update: false)
    })
}

1 个答案:

答案 0 :(得分:6)

(免责声明:我为Realm工作)

都能跟得上!就像在锡上说的那样,当一个对象从一个领域中删除时,你不能简单地使用相同的对象引用再次添加它。

可能有必要在那里重新思考你的逻辑。如果用户有权在他们移动删除对象后重新添加对象,那么 实际 删除它可能是个好主意,直​​到用户已将应用程序推进到无法返回的位置。

如果不这样做,您可以随时将信息保存在对象中,只需在用户再次按下按钮时创建一个新对象。