1

在我的应用程序中,我有这种情况,我需要将对象发布到远程服务器并获取对象密钥,然后将对象存储在本地。我在我的应用程序中实现了核心数据和 Restkit。

对象值是从用户输入中收集的。在将对象发布到远程服务器之前,我想不出一个好方法来准备对象。该对象是 NSManagedObject 类型的实体,我不想在从服务器获取对象 ID 之前存储它。

我遇到了这个建议使用瞬态对象来处理这种情况。但正如该线程中所讨论的,这会导致代码维护问题。

有没有更好的方法来处理这种情况?谢谢。

4

1 回答 1

3

使您的核心数据模型类遵守 RKRequestSerializable 协议。

然后,当用户输入被验证时,像往常一样创建一个实体并将其设置为 RKRequest 的参数值,这会将您的对象作为 HTTP 正文发送。查看 RKParams.m 中的示例。

还将新创建的实体设置为 RKObjectLoader 的 targetObject。这样,当您的 Web 服务返回信息(如新的唯一 ID)时,它将针对新对象并将新的唯一 ID 保存到该对象,而不会创建副本。

清如泥?

PS:哦,小心将自动生成的核心数据类与自定义代码混合!我建议mogen帮助您在每次进行更改时都不会丢失代码。

于 2012-06-27T20:23:08.293 回答