具有核心数据的Alamofire对象映射器

时间:2018-02-22 10:12:08

标签: core-data alamofire objectmapper

我正在编写一个应用程序,其中有一个显示用户列表的仪表板。所以我创建了一个名为' User'的实体。对于映射,我使用的是Alamofire对象映射器。

示例
在调用API之前,我正在检查网络是否可用。如果不是,我从核心数据中获取实体并显示保存的结果。如果是,我调用ApI并从API获取对象并将其保存到我的上下文中。

问题
现在,当我从API获取对象时,我将响应保存在NSManagedObjectContext中,并将其附加到我的“用户”中已存在的NSManagedObjects中。 entity.What我想要的是,如果用户已经存在于实体中,我不想再次将该User对象保存在我的实体中。所以在第一次调用中,我在数据库中有20个对象在第二次通话之后,计数增加到40,依此类推。我不想这样。我怎么做到这一点?

1 个答案:

答案 0 :(得分:1)

我使用了独特的约束条件'解决此问题。它基本上只是主键。所以当你添加' id'在您的实体中作为唯一约束,重复的托管对象不会存储在上下文中。以下是您可以遵循的链接:
http://www.oodlestechnologies.com/blogs/How-to-Implement-Unique-Constraints-in-Core-Data