【问题标题】:Core Data fault fulfilled from database for - is normal?从数据库完成的核心数据故障 - 正常吗?
【发布时间】:2014-03-15 13:36:13
【问题描述】:

我对这个注释有疑问。我已经下载了几个教程,例如:http://www.raywenderlich.com/14742/core-data-on-ios-5-tutorial-how-to-work-with-relations-and-predicates 并且在这个示例代码中“故障已完成”消息也是可见的。我的问题是:

  • 可以在没有这个的情况下从 Core Data 创建和获取数据 警报?
  • Core Data 中是否有非常严重的警报?

我的数据库如下所示:

当我想从“FailedBankDetails”表中获取数据时出现问题,例如“关闭日期”。

首先我从“FailedBankInfo”表中获取所有行(上面的代码):

    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];

NSEntityDescription *entity = [NSEntityDescription
                               entityForName:@"FailedBankInfo" inManagedObjectContext:self.managedObjectContext];

NSSortDescriptor *sort = [[NSSortDescriptor alloc]
                          initWithKey:@"name" ascending:NO];

[fetchRequest setEntity:entity];

[fetchRequest setSortDescriptors:[NSArray arrayWithObject:sort]];
[fetchRequest setFetchBatchSize:20];

NSFetchedResultsController *theFetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest
                                                                                              managedObjectContext:self.managedObjectContext
                                                                                                sectionNameKeyPath:nil
                                                                                                         cacheName:nil];
self.fetchedResultsController = theFetchedResultsController;
_fetchedResultsController.delegate = self;

接下来我要使用表格单元格显示数据:

 if ([[_fetchedResultsController objectAtIndexPath:indexPath] isKindOfClass:[FailedBankInfo class]]) {
    FailedBankInfo *info = [_fetchedResultsController objectAtIndexPath:indexPath];
    cell.textLabel.text = info.name;
    cell.detailTextLabel.text = [NSString stringWithFormat:@"%@, %@", info.city, info.details.closeDate];

}

我认为访问 info.details.closeDate 会发生“故障已完成”警报,因为当我更改此设置时,例如以 info.name 不出现此警报。

还有其他方法可以访问与特定“FailedBankInfo”对象相关的“closeDate”字段吗?

我已经厌倦了解决这个问题,请给我一些好的建议。

这是我的提醒:

2014-02-16 09:05:45.801 FailedBankCD[57158:70b] CoreData:注释:从数据库中完成的故障:0x8ba2d60

【问题讨论】:

  • 你能显示警报的文本吗?这很可能只是教程添加的日志记录代码。错误和履行错误不是核心数据中的错误,而是它的工作方式。
  • @jrturton 好的,我在帖子中添加了警报日志
  • @jrturton 谢谢,我没有读懂文档。我在想这是我的核心数据实现有问题。

标签: ios objective-c core-data


【解决方案1】:

您看到的是正常的 - 为您的应用启用了核心数据记录(这将在您的调试方案的参数部分下)。

“故障”,尽管名称如此,但不是问题。这是一项核心数据优化,在访问其属性之前不会从数据库中检索完整对象,此时“故障”已“完成”。

我认为,他们在选择语言时并没有考虑到初学者。

【讨论】:

    猜你喜欢
    • 2012-10-14
    • 1970-01-01
    • 1970-01-01
    • 2012-09-07
    • 2010-12-22
    • 1970-01-01
    • 2017-02-16
    • 2023-03-27
    相关资源
    最近更新 更多