2014-07-18 14 views
0

我正在从我们的iOS应用程序中删除RestKit。我可以将我想要的东西写入Core Data,但它们并没有真正连接。例如,我们有一个网络调用返回“类别”列表(其中包含“categoryID”和“categoryName”;“Category”也映射为多个“StoreLocation”)。然后,我们有另一个网络调用,返回一个“StoreLocation”列表(其中包含“storeName”,“storeID”,“storeCategoryIDs”;“StoreLocation”也映射到多个“Category”) 。没有RestKit复制RKConnectionDescription

使用RestKit,我可以使用RKConnectionDescription来描述“storeCategoryIDs”驱动与许多“类别”的关系。这样,如果我有一个给定的Category对象,我可以轻松地确定哪个StoreLocations属于该类别。

我很努力地看到如何在没有任何RestKit依赖关系的情况下完成此操作。我想我可以,无论何时我要插入一个新的类别或新的StoreLocation,获取所有相反的管理对象,并手动执行此操作,但我似乎缺少一些可以执行的Core Data组件。

+0

你为什么要删除RestKit,如果它做了你想要的东西? – Wain

+0

这对于一般的网络需求是不够的,所以我们切换到普通的AFNetworking 2. – Neil

+0

以什么方式?它建立在AFN1上,因此您可以在需要时访问它。你需要会话吗? – Wain

回答

0

您缺少的主要部分是应用于提取的谓词,它使用标识属性来查找适当的现有对象。由于核心数据不会奇迹般地更新一个对象,所以如果您创建不同的新对象并插入它,您确实需要运行自己的获取。

+0

RestKit是否每次(本例中)都会执行一次fetch操作,以确定storeCategoryIDs的列表是否已设置? – Neil

+0

这取决于你如何配置它。如果你问它,它也会基于标识符来缓存对象。 – Wain