【问题标题】:Core Data Issue - Unable to store NSNumber核心数据问题 - 无法存储 NSNumber
【发布时间】:2012-10-20 19:55:56
【问题描述】:

我正在尝试在我的应用程序中使用 Core Data。我想存储一个属性“totalKM”。

为了存储我的属性,我使用这些行:

Model *event = (Model *)[NSEntityDescription insertNewObjectForEntityForName:@"Model" inManagedObjectContext:managedObjectContext];
int number = 4;
[event setTotalKM:[NSNumber numberWithDouble:number]];

要读取我的属性,我使用这些:

Model *event = (Model *)[NSEntityDescription insertNewObjectForEntityForName:@"Model" inManagedObjectContext:managedObjectContext];
NSNumber *number = [event totalKM];

我的属性“totalKM”总是默认值,O。我也不例外。我错过了什么吗?

谢谢。

【问题讨论】:

    标签: objective-c core-data nsnumber


    【解决方案1】:

    insertNewObjectForEntityForName此方法用于将模型置于上下文中。

    这是一个新对象。

    正确的做法是:

    设置新的

    Model *event = (Model *)[NSEntityDescription insertNewObjectForEntityForName:@"Model" inManagedObjectContext:managedObjectContext];
    
    int number = 4;
    
    [event setTotalKM:[NSNumber numberWithDouble:number]];
    
    //save change if need
    NSError *error = nil;
    
    if (![self.manageObjectContext save:&error]) {
        NIDERROR(@"save managedContext error :%@",error);
    }
    

    获取对象进度

    当你需要获取模型表单 coredate.u 需要 2 次获取时使用 fetch

    喜欢这个圆顶

    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc]init];
    [fetchRequest setEntity:[NSEntityDescription entityForName:@"Board"
                                        inManagedObjectContext:self.manageObjectContext]];
    //set fetch conditions
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"board_id == %@", aBoardID];
    [fetchRequest setPredicate:predicate];
    
    NSError *error = nil;
    
    NSArray *results = [self.manageObjectContext executeFetchRequest:fetchRequest error:&error];
    
    if (error) {
        NIDERROR(@"fetch board error.\n board id: %@ \n error:%@", aBoardID, error);
        return nil;
    }
    
    Model *model = results[0];
    
    NSLog(@"%@",model.totalKM)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-12
      • 1970-01-01
      • 2014-07-24
      • 2014-05-07
      • 2012-08-17
      • 1970-01-01
      相关资源
      最近更新 更多