Question

I am receiving more data than needed: I only want to map first object of an array of objects. Using RestKit 0.22, how to map the following Json:

{ "name": "foobar",
  "tags": ["tag1", "tag2", "tag3"] }

With the following model:

@property (nonatomic, retain) NSString *name;
@property (nonatomic, retain) NSString *firstTag;

To map name, I have this code:

RKEntityMapping *mapping = [RKEntityMapping mappingForEntityForName:@"MyObjectModel" inManagedObjectStore:[RKManagedObjectStore defaultStore]];
[mapping addAttributeMappingsFromDictionary:@{@"name": @"name"}];

To map firstObject of tags to firstTag, I do not know how to proceed. Note: MyObjectModel is an NSManagedObject, so firstTag is @dynamic.

Was it helpful?

Solution

The tried and tested approach is to create a method on the managed object which takes the full array. That method extracts the first item and saves it to the actual NSString property. Then your mapping is as standard as all of the data types match.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top