0

私は RestKit を学んでいて、オブジェクト マッパーを使用してペイロードを POST したいと考えています。私は registerMapping: を使用していますが、これによりルート キーにマッピングが作成されます。代わりにオブジェクトをリソースにマップする方法はありますか? 私のマッピングコードは次のようになります:

[self.objectManager.router routeClass:[Session class] toResourcePath:@"/sessions" forMethod:RKRequestMethodPOST];
[self.objectManager.mappingProvider registerMapping:[Session mappingForObjectStore:self.objectManager.objectStore] 
                                    withRootKeyPath:@""];

[self.objectManager postObject:session usingBlock:^(RKObjectLoader *loader) {
    loader.resourcePath = @"/sessions";
    loader.delegate = self;

}];

次のようなペイロードを作成します。

{ "" : {data:"もの"} }

しかし、私は次のようなペイロードを求めています:

{ data:"もの" }

ここでのRestKit Wayとは何ですか?

4

1 に答える 1

0

Blake は、私が見落としていた別の API を使用していることを指摘してくれました。そこで、registerMapping を次のように置き換えました。

[self.objectManager.mappingProvider setObjectMapping:[Session mappingForObjectStore:self.objectManager.objectStore]
                              forResourcePathPattern:@"/sessions"];
[self.objectManager.mappingProvider setSerializationMapping:[[Session mappingForObjectStore:self.objectManager.objectStore] inverseMapping]
                                                   forClass:[Session class]];

三拍子揃って!

于 2012-07-13T20:46:55.140 に答える