2011-01-27 48 views
0

我目前使用RestKit和CoreData从REST风格的Web服务中拉取'Towns'集合。但是,我注意到如果某个城镇在Web服务上被删除,它仍然会出现在我的NSFetchedResultsController/UITableView中。有没有简单的方法来清除旧的核心数据实体?

很显然,在从服务接收到新城镇列表后,这条记录从未“触及”过,因为JSON有效载荷中没有引用它。

有没有一种简单的方法,我可以删除旧的城镇实体而不删除所有记录,然后再从服务中进行全新更新?我的最终目标是让NSFetchedResults控制器与服务返回的完全匹配。

回答

1

在处理JSON有效负载之前,您可以获取所有城镇。然后,无论您如何处理JSON,请从您的城镇阵列中移除相应的城镇。然后当你完成时,你阵列中剩下的城镇就是没有使用过的城镇。然后你可以迭代它们并删除它们。

+0

嗯,这可能有点棘手!我正在使用RestKit,它有效地处理了JSON有效负载。我想我会在RestKit完成它之后总是写一个额外的循环,但只是想知道在Core Data的深处是否存在某种神秘的技巧。 – 2011-01-27 21:48:21

相关问题