我的数据模型名为“Person”,它有 3 个属性“id”、“firstName”和“lastName”
使用 AFNetworking 导入 JSON 数据时,我希望能够使用“id”作为标识符来检查实体是否已经存在于核心数据中。如果它不存在我想创建它,如果它存在我想合并或更新它。
现在我有一个名为 duplicateCheck 的方法,它看起来像:
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"id==%@", _person.id];
NSFetchRequest *fetch = [[NSFetchRequest alloc] init];
NSError *error = nil;
[fetch setEntity:[NSEntityDescription entityForName:@"Person" inManagedObjectContext:self.managedObjectContext]];
[fetch setPredicate:predicate];
NSArray *items = [self.managedObjectContext executeFetchRequest:fetch error:&error];
for (NSManagedObject *object in items) {
// Not sure how to check from here and insert or update
// then save and call it during the API request?
}
我有一个谓词设置,但不知道从这里去哪里。循环遍历每个项目是正确的方式还是我要以错误的方式进行?