关于 RestKit 中的对象序列
Posted
技术标签:
【中文标题】关于 RestKit 中的对象序列【英文标题】:About the object sequence in the RestKit 【发布时间】:2013-11-27 08:49:51 【问题描述】:我最近使用 RestKit 来处理我的网络请求事务。有一个使用排序描述符的排序解决方案。但是服务器发送的数据没有排序键。
如何让数据保持与服务器相同的顺序。
有一个解决方案,我可以在对象中添加一个sortID
,但这不是很优雅。我想知道RestKit中是否有解决这个问题的api?
【问题讨论】:
【参考方案1】:您应该将sortID
添加到对象 - 这是合适的解决方案。要使用您需要使用映射可用的@metadata
填充它的值:
@"@metadata.mapping.collectionIndex" : @"sortID"
此代码假定您使用字典 (addAttributeMappingsFromDictionary:
) 指定映射。
记录了here,collectionIndex
为您提供了一个NSNumber
,表示响应数据中项目的顺序。
【讨论】:
你能分享一个元数据的例子吗,或者给我一个链接,我不知道这个。 我自己一直在研究这种方法。但是问题来了,在获取第二页数据的时候,这个collectionIndex被重置了。关于如何让它与分页数据一起工作的任何想法? 之前我已经从请求 URL 中恢复了页面 id 并使用页面和索引来执行排序@DonnaLea @Wain 对此表示感谢。我实际上一直在试图弄清楚如何从请求 URL 映射页面 id。目前已放弃,希望在正确的方向上有所作为。我认为这个问题/答案仍然是相关的讨论。 然后,您通常会将完整 URL 从 @metadata 传递到数据模型类上的自定义方法,并在该方法中从查询参数中提取页码并存储它。以上是关于关于 RestKit 中的对象序列的主要内容,如果未能解决你的问题,请参考以下文章
restkit 中的 ios NSDateFormatter
通过 RestKit 将 JSON 的本地 NSString 反序列化为对象(无网络下载)
如何将展平的对象序列化回服务器,在 RestKit 中未展平
Restkit:-[RKObjectMappingProvider mappingForPatternMatchingString:context:] 中的断言失败