我有一个可以编辑/创建的元素列表,我在新的上下文中执行此操作并仅在用户按下保存时保存。
我现在的问题是,当我想将对象处理到另一个视图控制器时,属性都是零,即用户按下“新元素”,获取提供的表单,在一个新的ManagedObject中创建设置了新的上下文和属性。如果我将该对象提供给另一个视图控制器,则该对象是错误的并且所有属性都是零 - 我该如何防止这种情况?如果用户按下取消,我不想保存和删除它,我更喜欢在“暂存器上下文”中创建/编辑,并且只有在用户真正按下保存时才保存。
答案 0 :(得分:1)
最可能的情况是您的暂存器管理对象上下文已被释放,这就是擦除托管对象。托管对象依赖于它们的上下文但不保留它们(以避免保留周期),因此如果上下文消失,它们就会停止工作。属性的零值是缺失上下文的最常见症状。为了将来可能的参考,当托管对象已经保存并且仍然不是临时对象时也是如此。