当我对包含数据的核心数据中的表进行提取时,它似乎没有任何结果。
在进行提取之前,我已在表上执行了读操作,数据就在那里。
这是代码。
func fetchAllFoods() -> NSFetchedResultsController {
let appDel:AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let context: NSManagedObjectContext = appDel.managedObjectContext!
let fetchRequest = NSFetchRequest()
//3 - set the correct table
let entity = NSEntityDescription.entityForName(self.entityName, inManagedObjectContext: context)
fetchRequest.entity = entity
fetchRequest.fetchBatchSize = 20
let sectionSortDescriptor = NSSortDescriptor(key: "foodCategory", ascending: true)
let sortDescriptors = [sectionSortDescriptor] //, secondSortDescriptor]
fetchRequest.sortDescriptors = sortDescriptors
//4 - navigate in relationship to group by startdate
let aFetchedResultsController = NSFetchedResultsController(
fetchRequest: fetchRequest,
managedObjectContext: context,
sectionNameKeyPath: "foodCategory",
cacheName: nil)
aFetchedResultsController.delegate = self
return aFetchedResultsController
}
当我在回归之前休息时,这就是显示的内容。
没有部分,没有数据。
我确信我遗漏了一些基本的东西,所以如果我需要分享更多信息,请告诉我。
非常感谢!
答案 0 :(得分:1)
您必须在获取的结果控制器上调用performFetch:
:
let aFetchedResultsController = NSFetchedResultsController(...)
aFetchedResultsController.delegate = self
var error : NSError?
if !aFetchedResultsController.performFetch(&error) {
// report error ...
}