MagicalRecord keypath

时间:2014-01-14 18:15:10

标签: ios objective-c magicalrecord

我正在使用magicalrecord并将我的属性映射到json details.slots

我的JSON看起来像这样

"details": {
    "startTimestamp": "2014-01-13",
    "endTimestamp": "2014-01-16",
    "employeeId" : 176,
    "slots": [
    {
        "numberOfAppointments": 0,
        "numberOfSpots": 1,
        "isReserved": 0,
        "startTimestamp": "2014-01-13 08:00:00",
        "endTimestamp": "2014-01-13 08:05:00"
    },
    {
        "numberOfAppointments": 0,
        "numberOfSpots": 1,
        "isReserved": 0,
        "startTimestamp": "2014-01-13 08:05:00",
        "endTimestamp": "2014-01-13 08:10:00"
    },
    {
        "numberOfAppointments": 0,
        "numberOfSpots": 1,
        "isReserved": 0,
        "startTimestamp": "2014-01-13 08:10:00",
        "endTimestamp": "2014-01-13 08:15:00"
    },
    ....

我想知道是否有一种简单的方法可以将字段映射到某个级别的字段? IE我可以使用my.object.property向下钻取,但是如果我的导入导入slots数组以轻松地将employeeId添加到每个对象,那么它是否存在?插槽可以少至600条记录,最多可达数千条。

我能想到的唯一解决方案是循环遍历每个插槽并在运行魔法记录导入之前手动添加它。 有人熟悉另一种更简单的方法吗?

1 个答案:

答案 0 :(得分:0)

使用当前框架实现此目的的一种方法是实现方法

- (BOOL) importDetails:(id)data;

在您的实体中。 MagicalRecord导入将查找此方法,并根据您的核心数据属性名称调用它(如果已实现)。这意味着您基本上重写了整个阵列的导入代码,但您可以访问您所追踪的数据。不理想,但仍有可能。