OStack程序员社区-中国程序员成长平台

标题: ios - RestKit - 从 RKRequestDescriptor 中排除具有 nil 值的属性映射 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 23:19
标题: ios - RestKit - 从 RKRequestDescriptor 中排除具有 nil 值的属性映射

问题是当值为 nil 时,我需要从有效负载中完全删除属性 @"unitprice",但如果它在请求中有值,则将其保留在那里。因此,OrderLine 的有效负载应如下所示{"id""orderlineId", @"unitprice""unitprice"} OR @{"id""orderlineId"} 请注意,映射是一对多的关系。是否有可能做到这一点?非常感谢您的帮助,谢谢! /* 请求描述符 */

+(RKObjectMapping*) getSalesOrderMappingRKRequestMethod)method {

RKEntityMapping *requestMapping = [RKEntityMapping mappingForEntityForName"SalesOrder"
                                                       inManagedObjectStore:[RKManagedObjectStore defaultStore]];
RKEntityMapping *orderLinesMapping = [RKEntityMapping mappingForEntityForName"OrderLine"
                                                         inManagedObjectStore:[RKManagedObjectStore defaultStore]];
requestMapping.identificationAttributes = @[ @"salesOrderId" ];
NSMutableDictionary *attributeMappings = [NSMutableDictionary dictionaryWithDictionary{
                                                                                         @"id": @"salesOrderId",
                                                                                         }];
NSDictionary *orderLineAttributeMappings = @{
                                             @"id": @"orderlineId",
                                             @"unitprice": @"unitPrice"
                                             };

[orderLinesMapping addAttributeMappingsFromDictionaryrderLineAttributeMappings];
[requestMapping addPropertyMapping:[RKRelationshipMapping relationshipMappingFromKeyPath"lines"
                                                                                toKeyPath"salesOrderToOrderLines"
                                                                              withMappingrderLinesMapping]];


return  requestMapping;
}

enter image description here



Best Answer-推荐答案


在映射上将 assignsDefaultValueForMissingAttributes 设置为 NO。您不需要 2 个不同的映射(除非您确实想在 JSON 中包含 nil 的某些属性)。

关于ios - RestKit - 从 RKRequestDescriptor 中排除具有 nil 值的属性映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24443606/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4