2

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マッピングについても同じことを行いました。また、オブジェクトマッピングデータを含む2つのnsarrayを含むwordsというクラスもあります。しかし、これを実装して正しくリンクする方法がわかりません。

@interface Words : NSObject {

    NSArray *_verbs;
    NSArray *_adjs;
}

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

これに関するヘルプとガイダンスをいただければ幸いです。私はカタログプロジェクトの例を見て、それを実行することはできましたが、それを自分のjsonファイルに適用するための概念を習得することはできませんでした。

ありがとう

G

4

1 に答える 1

4

まだ気づいていない場合は、ここのGithubページにあるOM2.0の新しいドキュメントを参照することをお勧めします。JSONをオブジェクトにマップする方法を明確に示しています。

于 2011-07-11T00:40:08.763 に答える