我很难使用RestKit来获取我需要的数据。
我试图接触"工作"此JSON文件中的数据。
{
response: {
accountResult: 1,
accounts: [{
userDetail: {
idString: "de454657",
idName: "alpha"
},
deptId: 245,
jobs: [{
jobId: "584349964",
payHash: 566889,
uniform: {
color: "blue",
tie: "red"},
shoes: {
color: "black",
laces: "black"}
},
{
jobId: "584349965",
payHash: 566867,
uniform: {
color: "blue",
tie: "red"},
shoes: {
color: "black",
laces: "black"}
},
{
jobId: "584349978",
payHash: 566879,
uniform: {
color: "blue",
tie: "red"},
shoes: {
color: "black",
laces: "black"}
}]
}]
}
}
我可以成功映射到"帐户"级别并映射到" idName"等项目。和" deptID"但我无法确定如何到达"工作"数据
keyPath:@"response.accounts.jobs"
没有成功的工作。怎么做到这一点?我是映射到类而不是核心数据,如果这对于获得这些数据有所不同。
感谢您提供任何帮助或建议。
更新 - 获取数据的解决方案,但不是原始问题的解决方案,询问是否有方法可以直接获取作业数据。
我有解决方案,但仍在寻找任何有解决方法的人。
从"工作"是" accounts"中的JSON数组。数组我可以通过两个映射来解析作业 - 首先是帐户,然后是作业。
RKObjectMapping* accountMapping = [RKObjectMapping mappingForClass:[Account class]];
[accountMapping addAttributeMappingsFromDictionary:@{@"deptId":@"deptID"}];
RKObjectMapping* jobMapping = [RKObjectMapping mappingForClass:[Job class]];
[jobMapping addAttributeMappingsFromDictionary:@{@"jobId":@"jobID"}];
[accountMapping addPropertyMapping:[RKRelationshipMapping relationshipMappingFromKeyPath:@"jobs"
toKeyPath:@"job"
withMapping:jobMapping]];
有没有办法直接映射到工作而无需读入帐户?我只需要文件中所有作业的列表 - 我的项目不需要帐户信息或他们的关系。使用上面我显然可以读取两个数据点,然后只使用我需要的工作数据 - 我希望有人知道一种方法可以避免同时提取(帐户和工作)以及提取工作信息的方法吗?
答案 0 :(得分:0)