我有實體的層次結構如下 NSFetchedResultsController節數爲0
在我TableViewController我有以下代碼:
private lazy var fetchedResultsController: NSFetchedResultsController = {
let fetchRequest = NSFetchRequest(entityName: "Worker")
let workerTypeSortDescriptor = NSSortDescriptor(key: "workerType", ascending: true)
let firstNameSortDescriptor = NSSortDescriptor(key: "firstName", ascending: true)
fetchRequest.sortDescriptors = [workerTypeSortDescriptor, firstNameSortDescriptor]
guard let stack = CoreDataStackSingleton.sharedInstance.coreDataStack else {return NSFetchedResultsController()}
let frc = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: stack.mainQueueContext, sectionNameKeyPath: "workerType", cacheName: nil)
frc.delegate = self
return frc
}()
...
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
if let sections = fetchedResultsController.sections {
print(sections.count)
return sections.count
}
return 0
}
...
func viewDidLoad(){
...
try fetchedResultsController.performFetch()
...
}
,我總是得到0從print(sections.count)
我不知道爲什麼,因爲我有3個實體,我假設有3個部分。這裏是the project
不,如果上下文是空的,我必須有3個部分它的真實 –