RestKit - 映射到同一实体的关系会创建一个infine循环

Kha*_*war 2 core-data objective-c ios restkit restkit-0.20

我需要创建一个实体与同一实体的关系.基本上它是Meetings可能有任何实体ParantMeeting.

在此输入图像描述

这就是我创造关系的方式.

- (RKEntityMapping *)meetingsMapping {

    RKEntityMapping *meetingsMapping = [RKEntityMapping mappingForEntityForName:@"DBMeetings" inManagedObjectStore:objectManager.managedObjectStore];
    meetingsMapping.setDefaultValueForMissingAttributes = NO;
    meetingsMapping.deletionPredicate = [NSPredicate predicateWithFormat:@"shouldBeDeleted = 1"];
    [meetingsMapping setModificationAttributeForName:@"updated_at"];
    meetingsMapping.identificationAttributes = @[@"id"];

    [meetingsMapping addAttributeMappingsFromDictionary:@{
                                                          @"id": @"id",
                                                          @"title": @"title",

                                                          @"start_time": @"start_time",
                                                          @"finish_time": @"finish_time",

                                                          @"lock": @"lock",
                                                          @"location": @"location",
                                                          @"sample": @"sample",

                                                          @"deleted": @"shouldBeDeleted",

                                                          @"created_at": @"created_at",
                                                          @"updated_at": @"updated_at",
                                                          @"follow_up_id": @"follow_up_id",
                                                          @"total_topics": @"total_topics",
                                                          }];

    [meetingsMapping addRelationshipMappingWithSourceKeyPath:@"tags" mapping:[self tagsMapping]];
    [meetingsMapping addRelationshipMappingWithSourceKeyPath:@"required_participants" mapping:[self contactsMapping]];
    [meetingsMapping addRelationshipMappingWithSourceKeyPath:@"optional_participants" mapping:[self contactsMapping]];
    [meetingsMapping addRelationshipMappingWithSourceKeyPath:@"readonly_participants" mapping:[self contactsMapping]];
    [meetingsMapping addRelationshipMappingWithSourceKeyPath:@"organizer" mapping:[self contactsMapping]];
    [meetingsMapping addRelationshipMappingWithSourceKeyPath:@"parent_meeting" mapping:[self meetingsMapping]];

    return meetingsMapping;
}
Run Code Online (Sandbox Code Playgroud)

每当我添加关系映射时 parent_meeting

[meetingsMapping addRelationshipMappingWithSourceKeyPath:@"parent_meeting" mapping:[self meetingsMapping]];
Run Code Online (Sandbox Code Playgroud)

它创造了一个无限循环.是否有任何其他方式可以创建与同一实体的关系.

请帮忙.

Wai*_*ain 6

替换导致递归的行:

[meetingsMapping addRelationshipMappingWithSourceKeyPath:@"parent_meeting" mapping:[self meetingsMapping]];
Run Code Online (Sandbox Code Playgroud)

直接引用映射本身:

[meetingsMapping addRelationshipMappingWithSourceKeyPath:@"parent_meeting" mapping:meetingsMapping];
Run Code Online (Sandbox Code Playgroud)