【发布时间】:2012-01-24 01:57:51
【问题描述】:
对于我的 JSON,我想获得以下格式:
"fromTrigger":{
"id":1,
"fieldId":2,
"type":"FROM"
}
但是通过我的映射,我得到以下信息:
"fromTrigger":[
{
"id":1,
"fieldId":2,
"type":"FROM"
}
]
如您所见,我在第二个括号中有多余的方括号“[ ]”。
我有以下映射:
RKObjectMapping* fromTriggerMapping = [RKObjectMapping mappingForClass:[ActianTriggers class]];
[fromTriggerMapping mapKeyPath:@"id" toAttribute:@"triggerId"];
[fromTriggerMapping mapKeyPath:@"fieldId" toAttribute:@"fieldId"];
[fromTriggerMapping mapKeyPath:@"type" toAttribute:@"type"];
[fromTriggerMapping mapKeyPath:@"filters" toRelationship:@"filters" withMapping:triggerMapping serialize:YES];
[[RKObjectManager sharedManager].mappingProvider setMapping:fromTriggerMapping forKeyPath:@"fromTrigger"];
更新: 感谢您的快速回复,我的问题是如何让“FromTrigger”块的 JSON 只有大括号而不是方括号。从上面的两个 JSON 中,我想实现第一个的格式。我需要这个,因为否则 Web 服务会引发错误。
ActianTriggers 类(下面是头文件,.m 只合成这些变量):
@interface ActianTriggers : NSObject
@property (nonatomic, retain) NSString *type;
@property (nonatomic, retain) NSNumber *triggerID;
@property (nonatomic, retain) NSNumber *fieldId;
@property (nonatomic, strong) NSArray *filters;
@end
【问题讨论】:
-
ActianTriggers是什么东西? -
能否提供ActianTriggers的定义,以及triggerMapping?查看与 JSON 生成关联的 sn-p 也会很有帮助。我假设您正在尝试 PUT/POST,但确切的代码 sn-p 将有助于确定序列化操作发生了什么。
标签: objective-c ios json cocoa-touch restkit