[英]RKConnectionDescription unstable with Restkit 0.20.3
我有兩個來自兩個不同Web服務的實體,它們之間存在多對多關系。
實體A {NSString * id,NSString * details}
實體B {NSString * key,NSString * value,NSString * type,NSString * foreignId}
我嘗試映射實體B:
+ (RKObjectMapping *)mapping { RKEntityMapping *mapping = [RKEntityMapping mappingForEntityForName:NSStringFromClass([self class]) inManagedObjectStore:[RKObjectManager sharedManager].managedObjectStore];
[mapping addAttributeMappingsFromDictionary:@{
@"key": @"key",
@"id":@"foreignId",
@"type":@"type",
@"value":@"value"
}];
mapping.identificationAttributes = @[@"featureKey",@"type",@"foreignID"];
[mapping addConnectionForRelationship:@"homeApplianceDatas" connectedBy:@{@"foreignId":@"id"}];
return mapping;
}
在我的測試json中,所有類型B的實體都具有相同的foreignID“ Car”,但是只有少數實體與“ A”實體有關系(大約15%)!
任何想法?
使用外鍵映射時,如果未找到目標對象,則將(可以)建立連接。 該連接將不會在以后再次處理。
同樣(這很可能被視為RestKit中的錯誤),任何新的外鍵映射關系內容都會替換任何先前的關系內容。 沒有可用的API來修改此行為(與嵌套關系處理分配策略一樣)。
因此,在許多情況下,您將需要自己處理外鍵信息,以確保需要連接的所有內容都已實際連接。 您可以針對RestKit提出分配策略的問題,但是第一個問題是針對您的設計問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.