如何在带有Mantle的NSArray中指定子对象类型 [英] How to specify child objects type in an NSArray with Mantle

查看:353
本文介绍了如何在带有Mantle的NSArray中指定子对象类型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我有一个字典

{
  name: "Bob",
  cars: [
    { make: "ford", year: "1972" },
    { make: "mazda", year: "2000" }
  ],
}

和两个模型如:

@interface CarModel : MTLModel

@property (nonatomic, strong) NSString *make;
@property (nonatomic, strong) NSString *year;

@end

@interface PersonModel : MTLModel

@property (nonatomic, strong) NSString *name;
@property (nonatomic, strong) NSArray *cars;

@end

如何使用Mantle以便我的汽车阵列在我的人模型中是CarModels?

How do I use Mantle so that my array of cars in my person model are CarModels?

推荐答案

啊想通了。我需要添加一个私有方法:

Ah figured it out. I needed to add a private method:

+ (NSValueTransformer *)carsTransformer
{
    return [NSValueTransformer mtl_externalRepresentationArrayTransformerWithModelClass:[CarModel class]];
}

并确保我使用:

[PersonModel modelWithExternalRepresentation:dict];

这篇关于如何在带有Mantle的NSArray中指定子对象类型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆