2012-07-31 55 views
3

此问题似乎影响许多使用定制的宁静APIS的objective-c开发人员 - 例如herehere。在后端,我们使用ISO 6801日期,并且在从服务器拉下对象时遇到有效日期时遇到问题。这是我们使用的日期格式,但由于时区的结肠偏移的NSDate都不能认呢:将ISO6801日期转换为NSDate以获取RestKit对象映射

1981-09-01T00:00:00-06:00

我已经使用这个ISO6801 parser and unparser,其中包括在RestKit的最新版本的尝试,但我无法弄清楚如何成功地将它添加到对象映射。如何将日期格式化程序添加到RestKit对象映射?任何人都可以提供如何做到这一点的代码示例?

这是我的失败代码。这就是我正在寻找,并根据google groups post试过了,但它给错误:

[mapping.dateFormatStrings addObject:[[MyISO8601DateFormatter] alloc] init]]; 

有一个related answer on this post,但是这部分是过时和缺乏工作的例子。

+0

要在ARC项目中使用非ARC代码,请参见[here](http://stackoverflow.com/questions/6646052/how-can-i-disable-arc-for-a-single-file-in -一个专案)。事实上,RestKit本身不符合ARC标准。 – 2012-08-01 06:35:24

+0

谢谢。工作得很好,仍然有将日期格式化程序添加到RestKit对象映射的相同问题。 – 2012-08-01 15:14:35

回答

1

要添加你这样做的日期格式:

[RKObjectMapping addDefaultDateFormatter: formatter]; 

如果味道不适合你,你可以尝试一些你会看到有在头文件中的其他选项。

+0

谢谢 - 这将在全球范围内完成。我想知道如何将它添加到特定的映射中,但我也只是想到了这一点。您已经将日期格式化程序放入数组中,如下所示:mapping.dateFormatters = [NSArray arrayWithObject:isoDateFormatter] ;. – 2012-08-01 15:55:54