title: RestKit mapping with NSDictionary and NSArray object
body: <pre><code> {"coord":{"lon":72.62,"lat":23.03},"weather":[{"id":500,"main":"Rain","description":"light rain","icon":"10n"}],"base":"stations","main":{"temp":303.082,"pressure":1014.85,"humidity":66,"temp_min":303.082,"temp_max":303.082,"sea_level":1018.46,"grnd_level":1014.85},"wind":{"speed":1.07,"deg":340.501},"rain":{"3h":0.435},"clouds":{"all":76},"dt":1475333911,"sys":{"message":0.0033,"country":"IN","sunrise":1475283682,"sunset":1475326567},"id":1279233,"name":"Ahmadabad","cod":200}
  </code></pre>
  
  <p>Above is my API response.</p>
  
  <p>Now I want to mapping of "weather" and "name" and want the same object as a response.</p>
  
  <p>I can create to class</p>
  
  <pre><code>@interface WeatherStatus : NSObject
  @property (nonatomic, copy) NSString *name;
  @property (nonatomic, strong) WeatherInfo *info;
  @end
  </code></pre>
  
  <p>and </p>
  
  <pre><code>@interface WeatherInfo : NSObject
  @property (nonatomic, copy) NSString *description;
  @property (nonatomic, copy) NSString *icon;
  </code></pre>
  
  <p>Below is mapping code.</p>
  
  <pre><code> RKObjectMapping *weatherInfo = [RKObjectMapping mappingForClass:[WeatherInfo class]];
  [weatherInfo addAttributeMappingsFromDictionary:@{@"description": @"description", @"icon": @"icon"}];
  
  RKObjectMapping *weatherStatus = [RKObjectMapping mappingForClass:[WeatherStatus class]];
  
  [weatherStatus addAttributeMappingsFromArray:@[@"name"]];
  [weatherStatus addPropertyMapping:[RKRelationshipMapping relationshipMappingFromKeyPath:@"weather" toKeyPath:@"weather" withMapping:weatherInfo]];
  
  RKResponseDescriptor *responseDescriptor = [RKResponseDescriptor responseDescriptorWithMapping:weatherStatus method:RKRequestMethodGET pathPattern:nil keyPath:@"weather" statusCodes:nil];
  
      [objectManager addResponseDescriptor:responseDescriptor];
  
      NSDictionary *queryParams;
      queryParams = [NSDictionary dictionaryWithObjectsAndKeys:kAPP_KEY, @"appid", @"Ahmedabad", @"q", nil];
      [[RKObjectManager sharedManager] getObjectsAtPath:@"/data/2.5/weather" parameters:queryParams success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
          WeatherStatus *obj = [mappingResult.array objectAtIndex:0];
          NSLog(@"info %@",obj.info);
          NSLog(@"name %@",obj.name);
      } failure:^(RKObjectRequestOperation *operation, NSError *error) {
          NSLog(@"What do you mean by 'there is no coffee?': %@", error);
      }];
  </code></pre>
  
  <p>I am getting </p>
  
  <pre><code>info (null)
  name (null)
  </code></pre>
  
  <p>Can anyone let me know where is the mistake?</p>
  
  <p>I have already seen <a href="https://stackoverflow.com/questions/23529494/restkit-complex-and-simple-json-rkobjectmapping-almost-working-but">RestKit complex and simple JSON RKObjectMapping almost working, but</a></p>