2012-05-24 32 views
2

我有一個問題,這是....好有點令人沮喪。但那是由於我自己(缺乏)作爲程序員的技能:)。Restkit刪除Coredata中的對象時,他們不會出現在JSON

基本上,我有一個在線軌道服務,發送博客帖子到我的應用程序(使用其餘的工具包和核心數據)。 Restkit然後將它們映射到tableview。一旦restkit做到這一點,我就會在向服務器發出'最後成功'請求時在我的應用中創建一個時間戳。完美的作品。

下一次我更新時,它將該時間戳發送到rails應用程序,該應用程序只發送從那以後添加的對象(以JSON形式)(即增量更新)。

現在,對於這個問題,出於某種原因,當restkit收到這個消息時,它會從核心數據中以前的更新中刪除所有對象,並只顯示它在JSON中收到的'delta'/ new對象。所以我認爲restkit認爲由於舊的對象不是新的JSON的一部分,所以他們必須被孤立並刪除它們。

我該如何阻止這種情況發生?我的問題是我不想在每次有更新請求時傳輸我的整個在線數據庫(帶寬浪費和我認爲的不雅)。有沒有辦法保持coredata數據庫不變,只有'添加'它?

我看過一些帖子提出同樣的問題,但他們都沒有答案(我想,但我可以在有些時候愚蠢)!

請幫

問候

回答

1

想通了;

查找到RkManagedObjectLoader.m文件,並尋找方法 deleteCachedObjectsMissingFromResult

禁用此方法,以防止核心數據進行任何被刪除。

希望這有助於

+0

應該有一個更優雅的解決方案。 –