问题
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
.
回答1:
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.
来源:https://stackoverflow.com/questions/22145704/restkit-0-22-how-to-map-only-firstobject-of-an-array