使用Core Data无法保存错误数据

时间:2017-02-01 18:08:27

标签: swift xcode core-data

大家好我正在尝试使用文本字段中的核心数据保存数据,然后点击保存按钮。

起初并没有保存,但是现在当我保存时我收到的错误是:

  

由于未捕获的异常终止应用程序' NSInvalidArgumentException',原因:' NSFetchedResultsController的实例需要带有排序描述符的获取请求'

我希望你们能提供帮助。

var controller: NSFetchedResultsController<TextInputs>!

override func viewDidLoad() {
    super.viewDidLoad()

    controller.delegate = self

和功能

  func attemptFetch() {

    let fetchRequest: NSFetchRequest<TextInputs> = TextInputs.fetchRequest()

    let controller = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: DataController().managedObjectContext, sectionNameKeyPath: nil, cacheName: nil)

    self.controller = controller

    do {
        try controller.performFetch()
    } catch {  
        let error = error as NSError
        print("\(error)")
    }
}

和行动

@IBAction func savePressed(_ sender: Any) {

    attemptFetch()

    let textInputs = TextInputs(context: DataController().managedObjectContext)

    if let page22Text = TextInputBox.text {
        textInputs.page22 = page22Text

        do {
            try DataController().managedObjectContext.save()
        } catch {
            fatalError("Failure to save context: \(error)")
        }

0 个答案:

没有答案