gpt4 book ai didi

ios - 核心数据关系未映射到 RESTkit

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:18:40 26 4
gpt4 key购买 nike

我正在努力使用 RESTkit 0.20.0-pre6 正确映射核心数据关系。

我想映射这个 JSON:

{ "items" : [ {"id" : 2001, "itemAttr1" : "..."}, ...<more items>... ],
"rooms": [ {"id" : 3001, "items": [2001, ...<more item id's>...] }

对应的核心数据模型:

Entity ItemMO (Attributes "id", "itemAttr1", Relationship "room" to RoomMO)
Entity RoomMO (Attributes "id", Relationship "items" to ItemMO)

属性映射很好,但关系是空的。

我已经尝试使用 RKConnectionDescription 描述 here ,使用此代码:

NSEntityDescription *roomEntity = [NSEntityDescription entityForName:@"RoomMO" inManagedObjectContext:self.context];
NSRelationshipDescription *itemsInRoom = [roomEntity relationshipsByName][@"items"];
RKConnectionDescription *connection = [[RKConnectionDescription alloc] initWithRelationship:devicesInRoom keyPath:@"devices"];
[roomMapping addConnection:connection];

我也尝试过使用简单的 RKRelationshipMapping 但无济于事:

[itemMapping addPropertyMapping:[RKRelationshipMapping relationshipMappingFromKeyPath:nil toKeyPath:@"room" withMapping:roomMapping]];

我一定是遗漏了一些简单的东西,因为这不应该是 RESTkit 的奇特案例。有什么想法吗?

最佳答案

我成功了。诀窍是在 ItemMO 上为外键添加一个额外的属性“roomId”。

Entity ItemMO (Attributes "id", "roomId", "itemAttr1", Relationship "room" to RoomMO)

然后将关系告诉 RESTkit:

[itemMapping addConnectionForRelationship:@"room" connectedBy:@{@"roomId" : @"id"}];

似乎没有额外的外键属性,RESTkit 就无法建立关系。

关于ios - 核心数据关系未映射到 RESTkit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14398309/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com