[英]RestKit 0.2: flattening the hierarchy in JSON
也許這里有一個類似的問題,但我找不到。 所以我有RestKit 0.2pre4並想映射這樣的JSON ...
{
"location": {
"position": {
"latitude": 53.9675028,
"longitude": 10.1795594
}
},
"id": "da3224f2-5919-42f2-9dd8-9171088f4ad7",
"name": "Something even more beautiful",
}
...對這樣的對象:
@interface FavoritePlace : NSManagedObject
@property (nonatomic, retain) NSString * name;
@property (nonatomic, retain) NSString * placeId;
@property (assign, nonatomic) double latitude;
@property (assign, nonatomic) double longitude;
@end
如您所見,關鍵是我不想創建關系並將“ Location”對象單獨存儲在數據庫中-只是沒有意義。 因此,我想將那些嵌套的東西(location.position.latitude和location.position.longitude)分配給對象本身的特定屬性。 如何實現呢?
顯然,我做了個瘋狂的猜測,而且奏效了! 這是達到目的的映射:
[placeMapping addAttributeMappingsFromDictionary:@{
@"id": @"placeId",
@"name": @"name",
@"location.position.latitude": @"latitude",
@"location.position.longitude": @"longitude"
}];
尚未在文檔中找到此內容,但也許只是我...無論如何,如果某些合理但未記錄的內容有效,那么框架應該是不錯的。 :) RestKit FTW!
您可以使用以下方式將字符串containsig和json字符串傳遞給nsdata:
NSData* jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
然后,您將能夠使用iOS API解析de json數據,
NSError *error;
NSDictionary *json = jsonData ? [NSJSONSerialization JSONObjectWithData:jsonData options:0 error:&error] : nil;
現在,檢查生成的NSDictionary(例如,使用NSlog),填充“ FavoritePlace”對象,並將其持久化。
希望有幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.