我正在尝试为类似休息的服务设置一个 RestKit 对象映射,不幸的是我无法控制。
该模型是一个带有产品列表的愿望 list 。愿望 list 和产品显然具有多对多关系。愿望 list 和产品具有各种属性,为简单起见,我们假设它们都只有名称。
我有单独的服务来获取愿望 list 的详细信息、产品的详细信息以及它们之间的关系。
例如:
获取/api/wish_list/?id=1234
{
"name"="My wish list",
"id"=1234
}
获取/api/产品
{
products:[
{
"name"="Product 1",
"id"=1111
},
{
"name"="Product 2",
"id"=2222
},
{
"name"="Product 3",
"id"=3333
}]
}
获取/api/wish_list_products/?wish_list_id=1234
{
products:[
{
"id"=1111
},
{
"id"=2222
}
}
我创建了 Product 和 WishList 实体之间的核心数据关系,但我如何告诉 RestKit 它应该发出第二个请求来获取特定 WishList 的产品 ID 列表?
我想我应该使用 [RKRoute routeWithRelationshipName:objectClass:pathPattern:method:]
和/或 RKConnectionDescription
对象,但我真的无法从帮助中弄清楚如何他们可以帮助我解决我的问题。
最佳答案
RestKit 不会自动加载关系数据,您需要告诉它何时加载。如果使用 routeWithRelationshipName:objectClass:pathPattern:method:
添加路由,则可以使用 getObjectsAtPathForRelationship:ofObject:parameters:success:failure:
发出请求。基本上,它将关系名称链接到请求以收集所需的详细信息。
关于ios - RestKit 对象与外键和服务的映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19097183/