RKRelationshipConnectionOperation managedObject 在启动方法中无效

RKRelationshipConnectionOperation managedObject invalid in start method

我在使用 RestKit 并尝试使用外键连接两个实体时遇到问题。

假设我有两个实体 A 和 B 以及一个关系 A <->> B 我通过以下方式创建连接

RKEntityMapping *aEntity = ...;
[aEntity addAttributeMappingsFromDictionary: ...]

RKEntityMapping *bEntity = ...;
[bEntity addAttributeMappingsFromDictionary: ...]

RKConnectionDescription *aConnection = [[RKConnectionDescription alloc] 
                                        initWithRelationship:[[b.entity
                                        relationshipsByName][@"a"]
                                                  attributes:@{@"aID" : @"id"}];
[bEntity addConnection:aConnection];

当从服务器接收到数据时,出现 EXC_BAD_INSTRUCTION 异常。 异常在以下方法中触发: static NSDictionary *RKConnectionAttributeValuesWithObject(RKConnectionDescription *connection, NSManagedObject *managedObject)id sourceValue = [managedObject valueForKey:sourceAttribute];

此方法在RKRelationshipConnectionOperation runloop 中调用。 我注意到 managedObject 在创建操作时有效(在 init 中),但在 start 方法中无效(调试器给出地址,但没有打印对象信息)

我找不到任何相关问题,所以我确定我遗漏了什么

编辑:关于评论,也许这就是为什么这不起作用的原因。 我在所有 A 实体之前获取。 在单独的获取中,我获取了一些 B 实体。 JSON 类似于

{
   "id" : 1,
   "someattr" : "somevalue",
   "aID" : 5
}

更新到 Restkit 0.25 解决了这个问题。