Я создал приложение и решил использовать CoreData, поэтому ему пришлось ретроспективно добавить его, а не тикать параметр Use CoreData при первом создании проекта.Использование незаявленного типа «CoreDataManager»
Я считаю, что у меня есть все, после того как я попытался выполнить несколько уроков, но не смог отладить одну ошибку, которую я получаю.
У меня есть UiTableViewController, который использует FetchRequest для заполнения его табличного представления. Код для вида имеет ... появляется
import UIKit
import CoreData
class MileageLogsTableViewController: UITableViewController {
@IBOutlet var milageLogTableView: UITableView!
var coreDataManager: CoreDataManager = CoreDataManager()
override func viewDidLoad() {
super.viewDidLoad()
do {
try fetchedResultsController.performFetch()
} catch {
let fetchError = error as NSError
print("Unable to Save MileageLog")
print("\(fetchError), \(fetchError.localizedDescription)")
}
}
}
ошибка против линии
var coreDataManager: CoreDataManager = CoreDataManager()
ошибки я получаю Использование необъявленной типа «CoreDataManager
вар используется в конце тот же класс
private lazy var fetchedResultsController: NSFetchedResultsController = {
// Initialize Fetch Request
let fetchRequest = NSFetchRequest(entityName: "MileageLog")
// Add Sort Descriptors
let sortDescriptor = NSSortDescriptor(key: "tripDate", ascending: true)
fetchRequest.sortDescriptors = [sortDescriptor]
// Initialize Fetched Results Controller
let fetchedResultsController = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: self.coreDataManager.managedObjectContext, sectionNameKeyPath: nil, cacheName: nil)
return fetchedResultsController
}()
Любая помощь по исправлению/отладке этой ошибки будет оценена.
Что такое CoreDataManager? он не является частью CoreData, так что вы создали что-то? – darren102
Ошибка, которую вы получаете Использование необъявленного типа 'CoreDataManager' не имеет ничего общего с' NSFetchedResultsController' – D4ttatraya
My bad! Я следил за несколькими учебниками, и в классе AppDelgate был один код, который был укомплектован одним учебником. В другом учебнике был показан тот же код, но я не заметил, что в этом учебнике были данные в собственном классе CoreDataManager. Как только я переместил код в свой класс, ошибка исчезла. – Mych