【发布时间】:2014-04-04 16:14:15
【问题描述】:
我在 Objective C 中得到的 JSON 有点问题
这是 JSON:
{
"id": 264,
"type": "products",
"slug": "dali",
"url": "http://localhost/?products=dali",
"status": "publish",
"title": "Dali",
"title_plain": "Dali",
"content": "",
"excerpt": "",
"date": "2014-03-25 15:47:16",
"modified": "2014-04-04 15:52:52",
"categories": [
{
"id": 26,
"slug": "juices-2",
"title": "Juices",
"description": "",
"parent": 0,
"post_count": 1
}
],
"tags": [],
"author": {
"id": 1,
"slug": "arturocalvo",
"name": "arturocalvo",
"first_name": "",
"last_name": "",
"nickname": "arturocalvo",
"url": "",
"description": ""
},
"comments": [],
"attachments": [],
"comment_count": 0,
"comment_status": "closed",
"custom_fields": {
"tipo_de_producto": [
"bebida"
],
"tipo_de_bebida": [
"jugo"
],
"product_0_sucursal": [
"2"
],
"product": [
"1"
],
"product_0_sizes_0_size": [
"s"
],
"product_0_sizes_1_size": [
"m"
],
"product_0_sizes_2_size": [
"l"
],
"product_0_sizes": [
"3"
],
"product_0_prices_0_price": [
"20"
],
"product_0_prices_1_price": [
"25"
],
"product_0_prices_2_price": [
"30"
],
"product_0_prices": [
"3"
]
}
}
当我用 ResKit 映射它时,我想将 3 种不同的大小存储在一个数组中,我在下面的类中:
#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>
#import "ProductPrice.h"
@class Categories, ProductPrice;
@interface AllProducts : NSObject
@property (nonatomic, copy) NSString * name;
@property (nonatomic, copy) NSSet * productType;
@property (nonatomic, copy) NSSet * locationId;
@property (nonatomic, copy) NSArray * sizes;
@property (nonatomic, copy) NSSet * productCategoryId;
@end
这是对象映射代码:
//Products Mapping
RKObjectMapping *productsMapping = [RKObjectMapping mappingForClass:[AllProducts class]];
[productsMapping addAttributeMappingsFromDictionary:@{
@"title": @"name",
@"custom_fields.product_0_sucursal": @"locationId",
@"custom_fields.tipo_de_producto": @"productType",
@"categories.id": @"productCategoryId"
}];
我遇到的问题是 JSON 的键带有 3 个不同的数字,product_0_sizes_0_size 然后从 0 到 2,我不知道在映射代码中输入什么,谁能帮助我?,谢谢提前
【问题讨论】:
-
所以键是静态的,但是不读
product_0_sizes不知道会有多少?可能有很多?而且您没有机会更改 JSON? -
没错,不幸的是JSON来自wordpress,我无法更改它,它可能有10个以上的大小,那么,有办法处理吗?
-
你知道,你可以只写代码。这比试图扭曲 ResKit 做它不想做的事情要快。
标签: ios objective-c json restkit restkit-0.20