Я новичок в Swift, и я пытаюсь научиться использовать Core Data. Но я получаю эту ошибку, и я не уверен, что я сделал неправильно. Я искал в Интернете и пробовал несколько вещей, но я не могу понять это.
Failed to call designated initializer on NSManagedObject class 'FirstCoreData.Course'
Когда эта строка выполняется:
ncvc.currentCourse = newCourse
В этой функции:
class TableViewController: UITableViewController, AddCourseViewControllerDelegate {
var managedObjectContext = NSManagedObjectContext.init(concurrencyType: NSManagedObjectContextConcurrencyType.MainQueueConcurrencyType)
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "addCourse" {
let ncvc = segue.destinationViewController as! NewCourseViewController
ncvc.delegate = self
let newCourse = NSEntityDescription.insertNewObjectForEntityForName("Course", inManagedObjectContext: self.managedObjectContext) as! Course
ncvc.currentCourse = newCourse
}
}
Класс, созданный с помощью "Создать подкласс NSManagedObject..." для объекта курса:
import Foundation
import CoreData
class Course: NSManagedObject {
// Insert code here to add functionality to your managed object subclass
}
и
import Foundation
import CoreData
extension Course {
@NSManaged var title: String?
@NSManaged var author: String?
@NSManaged var releaseDate: NSDate?
}