CoreData保存对象不成功



我试图通过使用CoreData来更新int数据,但我认为我在更新对象之前缺少了一些部分。这里我想做的是保存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"];
}

我没有看到你保存它的那一行。例如:

NSError *saveError;
if (![context save:&saveError]) {
    NSLog(@"Error: %@ %@", saveError, [saveError localizedDescription]);
}

限制获取请求可能也是一个好主意,因为您只查找第一个对象:

[request setFetchLimit:1];

我希望这将提高性能,但不能确认。

最新更新