核心数据如何处理基于ID的关系

时间:2013-10-16 11:10:01

标签: ios json rest core-data

我有一个休息的webservice,它在以下结构中获取了json响应:

{
"Categories": [
    {
        "category_id":1,
        "category_name":"category 1"
    },
     {
        "category_id":2,
        "category_name":"category 2"
    }
],
"Products":[
    {
        "product_id":1,
        "product_name":"Product 1",
        "category_id":1
    },
    {
        "product_id":2,
        "product_name":"Product 2",
        "category_id":1
    },
    {
        "product_id":3,
        "product_name":"Product 3",
        "category_id":2
    }

]    
}

我正在为我的iOS应用程序创建一个Core数据模型,我可以在其中保存这些数据,如下所示。

Core data model

问题是如何使用我在核心数据模型中创建的关系来映射这些数据?

我想到的最愚蠢的想法是根据类别ID搜索每个产品的类别,然后将其设置为     Product.category = category [i],但必须有一个更简单的方法来做到这一点。

1 个答案:

答案 0 :(得分:0)

根据您对ObjectMapper的使用,您需要使用“愚蠢的想法(TM)”自行建立联系。您应该将批处理作为批处理并对结果进行排序,以最大限度地减少对Core Data的调用并使映射变得简单。

如果您选择使用RestKit,那么您可以只配置对象的映射和用于链接它们的身份,RestKit将执行提升工作。这对你来说可能有点工作......