NSFetchRequest 上的 Swift2.0 CoreData 问题

Posted

技术标签:

【中文标题】NSFetchRequest 上的 Swift2.0 CoreData 问题【英文标题】:Swift2.0 CoreData issue on NSFetchRequest 【发布时间】:2015-08-08 07:23:48 【问题描述】:

这是我试图从 coredata 获取数据的代码 sn-p。我试图获取数据并使用断点检查,但没有数据!代码在swift2中。任何建议,将不胜感激。我定义了一个结构常量,我在其中定义了所有常量。 gate 是 nsmanagedobject 类中定义的字符串类型。 sn-p 是 viewDidLoad() 方法的一部分。

let context: NSManagedObjectContext? = (UIApplication.sharedApplication().delegate as? AppDelegate)?.managedObjectContext!
let TPTodayFetchRequest = NSFetchRequest(entityName: Constants.CoreDataEntities.TPTodayCoreDataEntity)

do 
let patroDaily = try context!.executeFetchRequest(TPTodayFetchRequest) as! [TPToday]
for patroEntity in patroDaily 
print(patroEntity.gate)



catch  print("error") 

【问题讨论】:

【参考方案1】:

除了繁琐的变量命名和不幸的缩进之外,你的代码很好,应该可以工作。

您必须调查您是否确实保存了您希望找到的数据。例如,您可以让程序记录文档目录 URL,然后您可以使用sqlite3 命令行工具检查 sqlite 文件。

【讨论】:

我做到了,有数据是从 json 请求中获取的,并已成功存储在 coredata 中。在将 json 响应保存到 coredata 后,我使用 'datum' 检入 sqlite 文件。

以上是关于NSFetchRequest 上的 Swift2.0 CoreData 问题的主要内容,如果未能解决你的问题,请参考以下文章

如何将类型应用于 NSFetchRequest 实例?

如何将类型应用于 NSFetchRequest 实例?

斯威夫特 2.3 NSFetchRequest

NSFetchRequest as entityName 给出错误“使用未声明的类型”

排除某些对象的一对多关系上的 NSFetchRequest 无法按预期工作

使用父 NSManagedObject 上的关系枚举子实体 VS 使用 NSFetchRequest