@interface Entity ()
@property (assign) int searchTotalPagesAll;
@property (assign) int searchTotalPagesIdeas;
@end
@implementation Entity
+ (NSDictionary *)JSONKeyPathsByPropertyKey {
return @{
@"Id": @"entity.id_entity",
@"name": @"entity.name",
@"coverage" : @"entity.coverage",
@"id_city": @"entity.Id_City",
@"cityName":@"entity.city",
@"countryName":@"entity.country",
@"stateName":@"entity.district",
@"countryCode": @"entity.countrycode",
@"keyword1": @"entity.key1",
... etc
由于地幔示例没有 init 方法,我应该在哪里初始化这些属性(searchTotalPagesAll、searchTotalPagesIdeas)作为默认值?该模型具有需要此属性和其他几个属性的内部方法。
无论您是从 JSON 还是其他方式创建 Mantle 模型,该模型都会使用以下命令进行初始化[-initWithDictionary:error:] https://github.com/Mantle/Mantle/blob/95c4477021234daee4802423ea2f45a9cc4c0ece/Mantle/MTLModel.m#L92。在模型类中,您可以将默认值添加到用于初始化模型的值中:
- (instancetype)initWithDictionary:(NSDictionary *)dictionaryValue error:(NSError *__autoreleasing *)error {
NSDictionary *defaults = @{
@"searchTotalPagesAll" : @(10),
@"searchTotalPagesIdeas" : @(5)
};
dictionaryValue = [defaults mtl_dictionaryByAddingEntriesFromDictionary:dictionaryValue];
return [super initWithDictionary:dictionaryValue error:error];
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)