核心数据删除对象,但保存过去的数据

问题描述:

我想找到一种方法来保存由被删除的核心数据中的对象创建的数据。核心数据删除对象,但保存过去的数据

例如,我有一个可以添加团队的应用程序。您可以将球员添加到该球队。通过该团队,您可以与其他团队进行游戏。该应用程序记录来自该游戏的数据。

如果我要删除一个在游戏中玩过的团队,我该如何让游戏仍然显示团队中的所有数据,而不管它是否被删除?

不要使用级联删除关系。如果你这样做,那么你的数据仍然存在,你将无法通过团队访问它。

我不知道你在做什么,但考虑不要删除团队。有很多方法可以让它看起来像删除(给用户),而不用从核心数据中实际删除它。例如,您可能需要考虑添加一个BOOL类型的属性,以指示团队是否处于“活动”状态。

-Update-

这听起来像你的目的,你需要:

  • 更改级联删除关系来抵消。这样可以让您在删除后仍然可以访问团队的数据。当团队被删除时,取消关系只是将团队指针更改为指向nil
  • 当你想删除一个团队的数据(团队被删除后)遍历所有核心数据属性,并删除任何指向一个nil团队。你可以做到这一点,只要你不再需要的信息
+0

啊我认为改变级联删除将工作最好... – Luke 2012-08-01 18:51:33

+0

是否有无论如何删除整个团队呢? – Luke 2012-08-01 22:08:39

+0

你的意思是一旦你删除了团队的参考资料,你希望以后能够删除它的信息?浏览并删除任何不指向团队的对象。 – Dustin 2012-08-02 03:01:07