必要な情報を完全に取得するために2つの部分からなるクエリを必要とするWebサービスがあります。/vehicles.jsonへのGETリクエストを介して、すべての車両のリストをクエリできます。これにより、次のようなすべての車両のリストが表示されます。
{
vehicles: [
{
vehicle_name: "Sam's Toyota Corola",
uri: ".../vehicle/1001.json"
},
{
vehicle_name: "John's Honda Accord",
uri: ".../vehicle/1002.json"
}
]
}
urisは一意のIDです。次に、詳細情報が必要な場合は、車両uriへのGETリクエスト、つまり/vehicle/1001.jsonを介して車両の詳細を照会できます。これにより、次のような車両の詳細が表示されます。
{
vehicle: {
engine: "V6",
sunroof: "no"
}
}
name、uri、engine、sunroofを含む1つのCore Dataタイプで車両を表現したいのですが、RestKitの2つのルートが同じCoreDataタイプにマップされています。
// Map the list of all vehicles route
[objectManager.router routeClass:[CDVehicle class] toResourcePath:@"/vehicles.json" forMethod:RKRequestMethodGET];
// Map the show of a specific vehicle route
[objectManager.router routeClass:[CDVehicle class] toResourcePath:@"/vehicle/(vehicleID).json" forMethod:RKRequestMethodGET];
RestKitはこれが気に入らず、同じものにマップされたGETメソッドのルートが2つあるというエラーが表示されます。なぜ?!?確かにこれは、RestKitを使用して実質的に何でもできることを考えれば実行できます。
誰かがこれを行う方法を知っていますか?