RestKit & iOS, JSON, Rails - 如何将类的实例映射到字典/哈希中,以便通过唯一标识符轻松选择



我有一个基本的iOS应用程序,可以与Rails应用程序接口。 这里的想法是从我在 Rails 中设置的 RESTful /channels.json 路由加载所有channel对象。

我想将所有Channel对象加载到 Xcode 中的 NSDictionary 中,以便可以使用 ActiveRecord 生成的通道对象的 ID 轻松识别它们 - 类似于[dictionary objectForKey:@"1"]

我可以轻松地将所有Channel对象加载到 NSArray 中,但将它们加载到 NSDictionary 中是很困难的。 我已经实现了 RestKit 的 didLoadObjectDictionary 委托方法,并按如下方式设置了我的 JSON 响应:https://gist.github.com/2504664

我相信我的映射设置不正确。 Channel对象的映射设置如下:https://gist.github.com/2504667

调用 didLoadObjectDictionary 方法时,对象 NSDictionary 包含 0 个键/值对。

如何将所有Channel对象加载到 NSDictionary 中,以便如上所述使用objectForKey轻松引用它们?

您仍然可以使用谓词从 nsarray 中获取内容:

[someArray filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"id = %@", someId]];

它返回另一个NSArray(应该有一个对象)。

或者,您可以使用 restkit 的核心数据映射,然后简单地通过 ID 从核心数据中获取对象。

最新更新