0
我有以下的JSONRestKit直接foregin键映射
{
...
"users": [
{
"name": "Username 1"
"id": "uid1",
},
{
"name": "Username 2",
"id": "uid2",
"userCreator": "uid1"
},
{
"name": "Username 3",
"id": "uid3",
"userCreator": "uid1"
}
]
}
而在CoreData,在用户类(属性名为id,名)我有类用户一个一对多的关系命名userCreator
现在我需要映射JSON的关系,我想
RKManagedObjectMapping * mapping = [RKManagedObjectMapping mappingForClass:[User class] inManagedObjectStore:[RKManagedObjectStore defaultObjectStore]];
mapping.primaryKeyAttribute = @"id";
[mapping mapAttributes:@"id", @"name", nil];
RKManagedObjectMapping * userCreatorMapping = [RKManagedObjectMapping mappingForClass:[User class] inManagedObjectStore:[RKManagedObjectStore defaultObjectStore]];
userCreatorMapping.primaryKeyAttribute = @"id";
[userCreatorMapping mapAttributes:@"id", nil];
//[mapping hasOne:@"userCreator" withMapping:userCreatorMapping];
[mapping mapRelationship:@"userCreator" withMapping:userCreatorMapping];
[mapping connectRelationship:@"userCreator" withObjectForPrimaryKeyAttribute:@"id"];
哪个不工作的权利,生产
...
"users":[{
"id":"uid1",
"name":"Username 1"
},
{
"id":"uid2",
"name":"Username 2",
"userCreator":{"id":"uid1"} // wanted "userCreator":"uid1",
}...
我的设置是正确的,我将userCreator中的对象映射到属性id,它被设置为主属性,userCreator中的对象只是一个字符串,它代表了编号 –
然后,您必须将映射完全删除。然后你会得到字符串。 – Mundi