【发布时间】:2017-06-28 20:48:07
【问题描述】:
我在 Realm DB 中有一个 Roof 对象,我用它在屏幕上显示一些数据。用户注销后,我删除Roof 对象,然后更新屏幕。在此更新方法中,应用程序崩溃并显示以下消息:“对象已被删除或无效。”
对象应该失效,还是不应该这样做?如果屋顶无效,我应该只检查update 方法,还是有更好的方法来处理不存在的对象?
这是我使用的基本代码:
class Roof: Object {
dynamic var info: String?
}
let roof = Roof()
let realm = try! Realm()
try! realm.write {
realm.add(roof)
}
try! realm.write {
realm.delete(roof)
}
【问题讨论】:
-
我确实在用户注销时删除了我的所有信息,您应该有其他代码依赖于该值,并且仍在引用它,请确保删除与用户 nil o 相关的所有内容以重新开始.
-
您是否在删除
roof对象后随时使用它?您是否将其存储在某处的财产中?您的代码示例中不清楚您的视图如何使用roof。 -
是的,我在某些屏幕上使用它作为属性。