如何在带有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];