[英]Map time with RestKit
我的iOS项目使用RestKit 0.21.0组件负责从远程服务器获取,解析和存储Core Data响应。 在其中一个后端JSON响应中,我有类似的东西:
"response": [
{
"id": 1,
"start_time": "10:00:00",
"end_time": "14:00:00",
"name": "Object name"
},
.
.
.
]
在Model.xcdatamodeld中,我使用字段startTime和endTime类型Date定义了实体。 通常,对对象的所有映射JSON响应都能正常工作,但是我对JSON字段start_time和end_time有问题。
你有什么建议如何正确地将时间字段映射到可以存储在Core Data(SQLite datatbase)中的数据?
使用适当的格式创建NSDateFormatter
以分析时间字符串。 使用[[RKValueTransformer defaultValueTransformer] insertValueTransformer:dateFormatter atIndex:0];
添加日期格式化程序[[RKValueTransformer defaultValueTransformer] insertValueTransformer:dateFormatter atIndex:0];
。 现在,RestKit将在需要映射到NSDate
目标时搜索所有已定义的日期格式化程序以及默认格式化程序。
继承了一个广泛使用RestKit的应用程序,现在发布的版本为0.21,非常棒。 需要在YYYY-MM-DD HH:MM:SS.SSS中添加日期到字符串转换,并按照上面的建议将所需的日期格式化程序添加到索引0处的默认复合格式化程序。但是,发现对RKObjectMapping的调用通过添加ISO8601来覆盖它索引为0的格式化程序,用于+(void)初始化中的向后兼容性。 评论那些线路,我得到了正确的结果。 我想这可能是应用程序的结构方式,对RKObjectMapping有任意数量的调用,并且无法在没有更改RKObjectMapping的情况下在正确的位置添加日期格式化程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.