【问题标题】:Restkit OM2 relationship mappingRestkit OM2 关系映射
【发布时间】:2011-06-27 13:14:08
【问题描述】:

我正在使用 Restkit OM2 接收 json 并映射到 iphone 上的对象。 我目前对如何构建映射感到困惑,并且可以提供一些帮助。

下面是一个示例 json 文件

    {
    -magic_verbs: [
    -{
    lemma: "work"
    position: 5
    score: "0.75"
    value: "working"
    }
    -{
    lemma: "head"
    position: 0
    score: "0.75"
    value: "heading"
    }
],
magic_advs: [
-{
lemma: "not"
position: 2
score: "0.6"
value: "not"
}
-{
lemma: "just"
position: 2
score: "0.6"
value: "just"
}
]
}

我只需要这些中的引理和值字段。所以例如动词类包含

@interface Verbs : NSManagedObject {

}
@property (nonatomic,retain) NSString *lemma;
@property (nonatomic,retain) NSString *value;

@end

@implementation Verbs

@synthesize lemma,value;

@end

然后我读入 json 并使用以下代码创建映射

objectManager = [RKObjectManager objectManagerWithBaseURL:@"http://localhost:3000"];
        objectManager.objectStore = [RKManagedObjectStore objectStoreWithStoreFilename:@"RKRelationshipMappingExample.sqlite"];

        [RKObjectManager setSharedManager:objectManager];

        RKObjectMappingProvider* provider = [[RKObjectMappingProvider new] autorelease];

        RKObjectMapping* verbMapping = [RKObjectMapping mappingForClass:[Verbs class]];
        [verbMapping mapKeyPath:@"lemma" toAttribute:@"lemma"];
        [verbMapping mapKeyPath:@"value" toAttribute:@"value"];
        [provider setMapping:verbMapping forKeyPath:@"magic_verbs"];
 [[RKObjectManager sharedManager] loadObjectsAtResourcePath:@"/api/users/1/magic_words" objectMapping:verbMapping delegate:self];

我对 adjs 映射做了同样的事情。我还有一个名为 words 的类,它包含 2 个用于包含对象映射数据的 nsarray。但我不确定如何实现这一点并将它们正确链接起来。

@interface Words : NSObject {

    NSArray *_verbs;
    NSArray *_adjs;
}

@property (nonatomic, retain) NSArray *verbs,*adjs;
@end

对此的任何帮助和指导表示赞赏。我查看了目录项目中的示例,并且能够运行该示例,但无法掌握将其应用于我自己的 json 文件的概念。

谢谢

G

【问题讨论】:

    标签: iphone restkit


    【解决方案1】:

    我建议你看一下 Github 页面here 中关于 OM 2.0 的新文档 如果你还没有注意到。它清楚地说明了如何将 JSON 映射到对象。

    【讨论】:

    • 是的,我已经找到了,但忘了更新这个问题。现在它工作得很好,这只是一些初期问题。谢谢
    猜你喜欢
    • 2013-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-17
    • 1970-01-01
    • 2013-06-23
    • 2015-12-10
    相关资源
    最近更新 更多