我正在尝试使用int
更新CoreData
数据,但我认为在更新对象之前我缺少某些部分。这是我想要保存int
值的方法。在这里,我想要保存和更新第一个对象值。
- (IBAction)btnYakClicked:(UIButton *)sender
{
NSManagedObjectContext *context = [self managedObjectContext];
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:[NSEntityDescription entityForName:@"Kalorimetre" inManagedObjectContext:context]];
NSError *error = nil;
NSArray *results = [context executeFetchRequest:request error:&error];
NSManagedObject* kaloriObject = [results objectAtIndex:0];
NSNumber *valWeek = [NSNumber numberWithInteger:300];
NSNumber *valMonth = [NSNumber numberWithInteger:1000];
[kaloriObject setValue:valWeek forKey:@"thisweek"];
[kaloriObject setValue:valWeek forKey:@"thismonth"];
}
答案 0 :(得分:1)
我没有看到您保存的行。例如:
NSError *saveError;
if (![context save:&saveError]) {
NSLog(@"Error: %@ %@", saveError, [saveError localizedDescription]);
}
限制获取请求可能也是一个好主意,因为您只需要查找第一个对象:
[request setFetchLimit:1];
我希望这会提高性能,但无法确认。