Jel*_*lle 5 mapping json objective-c ios restkit
我有一个核心数据对象和一个REST Web界面,它对同一个属性使用不同的值.托管对象具有名为"type"的属性,该属性是整数(enum),REST接口具有名为"type"的字符串值(字符串如:"truck","car","moped").
在使用RKObjectLoaderDelegate方法获取对象时,我将值从字符串转换为整数objectLoader:willMapData:.我希望我应该怎么做.
我的问题:在放置/发布对象时,如何或在何处将值从整数(枚举)转换回字符串值?在序列化过程中是否有片刻可以操作put/post操作的值?我应该perpahps子类化序列化程序或RKManagedObjectMapping,还是我的委托在某些时候被调用,我可以更改属性的值?
您可以通过为要映射的(NSManagedObject)类创建一个类别,并在此类别中添加将由Restkit使用的特殊属性来解决此问题.因此,在类别中添加属性typeString,将枚举(类型)转换为字符串,并将属性"typeString"映射到json,而不是"type".它看起来像接收:
[mapping mapKeyPath:@"type" toAttribute:@"typeString"]
Run Code Online (Sandbox Code Playgroud)
像这样发送:
[serializationMapping mapKeyPath:@"typeString" toAttribute:@"type"]
Run Code Online (Sandbox Code Playgroud)
这种方式您根本不需要使用objectLoader:willMapData:,并且转换很好地嵌入到对象(类别)中.
| 归档时间: |
|
| 查看次数: |
1161 次 |
| 最近记录: |