Es posible obligar al asignador de objetos RestKit a mapear a un objeto anidado específico en una matriz mediante la sintaxis mapKeyPath dot?Asignación anidada de RestKit al elemento de matriz específico
Aquí está la respuesta que estoy tratando de asignar
<result is_array="true">
<item>
<_field_data>
<nid>
<entity>
<field_region>
<und is_array="true">
<item>
<value>1</value>
</item>
</und>
</field_region>
....
Sólo estoy interesado en el primer punto que alguna vez se volvió a field_region.
¿Cuál es la forma correcta de asignar este mapa?
he intentado varias iteraciones de:
RKManagedObjectMapping *record = [RKManagedObjectMapping mappingForClass:[MyRecordClass class] inManagedObjectStore:objManager.objectStore];
[record mapKeyPath:@"_field_data.nid.entity.field_region.und.0.item.value" toAttribute:@"region"];
y sigo obteniendo errores similar a:
T restkit.object_mapping:RKObjectMappingOperation.m:152 Found transformable value at keyPath '_field_data.nid.entity.field_region.und.0.item.value'. Transforming from type '__NSArrayI' to 'NSNumber'
W restkit.object_mapping:RKObjectMappingOperation.m:232 Failed transformation of value at keyPath '_field_data.nid.entity.field_region.und.0.item.value'. No strategy for transforming from '__NSArrayI' to 'NSNumber'
invoco la asignación a través de:
[[RKObjectManager sharedManager] loadObjectsAtResourcePath:kMyResourcePath usingBlock:^(RKObjectLoader* loader) {
loader.objectMapping = [[RKObjectManager sharedManager].mappingProvider objectMappingForClass:[MyRecordClass class]];
loader.method = RKRequestMethodGET;
loader.delegate = self;
loader.targetObject = nil;
}];
¿Alguna idea? ¡Más apreciado!
gracias. Analicé esta asignación dentro del mapeo, pero pensé que sería más inteligente (y más fácil) simplificar la respuesta del servidor. – Ted