繁体   English   中英

使用RestKit映射时间

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM