我正在尝试将关系映射添加到我的一个请求映射中。
POST 请求应该这样发送正文内容:
{"account":{"key":"the_key_goes_here","terms_of_service":1,"person_attributes":{"email":"[email protected]"}}}
我已将帐户映射设置为:
NSMutableDictionary *accountAttributes = [NSMutableDictionary dictionaryWithDictionary: @{@"key""key",@"terms_of_service""terms_of_service",@"source""source"}];
RKObjectMapping *requestMapping = [RKObjectMapping requestMapping];
[requestMapping addAttributeMappingsFromDictionary:accountAttributes];
现在,为了尝试将 person_attributes 添加到请求中,我执行以下操作:
NSMutableDictionary *userAttributes = [NSMutableDictionary dictionaryWithDictionary: @{@"first_name""first_name",@"last_name""last_name",@"email""email"}];
RKObjectMapping *userMapping = [RKObjectMapping requestMapping];
[userMapping addAttributeMappingsFromDictionary:userAttributes];
[requestMapping addRelationshipMappingWithSourceKeyPath"person" mapping:userMapping];
但是,这总是发送为:
{"account":{"key":"the_key_goes_here","terms_of_service":1,"person":{"email":"[email protected]"}}}
为了尝试将 person 更改为 person_attributes,我将 relationshipmappingwithsourcekeypath 修改为:
[requestMapping addRelationshipMappingWithSourceKeyPath"person_attributes" mapping:userMapping];
但是,它每次都失败并出现错误,说明:实体帐户不符合键“person_attributes”的键值编码
我知道这是因为 Account 没有 person_attributes 值。有没有办法将 key 路径添加为 person 但将其作为 person_attributes 发送?
提前感谢您的帮助!
Best Answer-推荐答案 strong>
您需要使用 RKRelationshipMapping 类和 relationshipMappingFromKeyPath:toKeyPath:withMapping: 方法创建关系,然后使用 addPropertyMapping: .
关于ios - 添加与关系名称不同的键路径的 Restkit 关系映射,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/23090808/
|