0

在我的数据模型中,我有以下实体:

Album:
    - name (required attribute)
    - year
    - tracks 
    ...

Track:
   - name (required attribute)
   - Album
    ...

我有一个服务器数据响应,其中包含关系详细信息,仅提供相关对象的标识符。

/Albums/1 返回:

{
   id:2,
   name:"The White Album",
   year:1968,
   ...
   tracks: ({id:12}, {id:13}, {id:14})
}

就目前而言,AFIncrementalStore 无法保存上下文,因为跟踪实体对象未通过验证。除了在数据模型中使关系可选之外,还有什么方法可以解决这个问题?

4

1 回答 1

0

我认为如果我们对您自己的模型进行如下思考:

  • 专辑有很多曲目
  • 一首曲目有专辑

根据这些信息,我们需要两个实体之间的关系(一对多)..您可以使用轨道获取请求,并且在方法中- (NSDictionary *)attributesForRepresentation:(NSDictionary *)representation ofEntity:(NSEntityDescription *)entity fromResponse:(NSHTTPURLResponse *)response您可以检查实体名称并将数据映射到您的模型..

据我所知,如果您的模型名称类似于来自服务器的响应键,AFIncremantalStore 将根据您的模型上的键和来自服务器的响应自动进行映射..

这就是我从你的问题中了解到的一切,我希望答案能满足你的问题..

于 2013-11-02T00:45:52.837 回答