2012-08-01 183 views
0

我想找到一種方法來保存由被刪除的核心數據中的對象創建的數據。核心數據刪除對象,但保存過去的數據

例如,我有一個可以添加團隊的應用程序。您可以將球員添加到該球隊。通過該團隊,您可以與其他團隊進行遊戲。該應用程序記錄來自該遊戲的數據。

如果我要刪除一個在遊戲中玩過的團隊,我該如何讓遊戲仍然顯示團隊中的所有數據,而不管它是否被刪除?

回答

3

不要使用級聯刪除關係。如果你這樣做,那麼你的數據仍然存在,你將無法通過團隊訪問它。

我不知道你在做什麼,但考慮不要刪除團隊。有很多方法可以讓它看起來像刪除(給用戶),而不用從核心數據中實際刪除它。例如,您可能需要考慮添加一個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