CoreData сохраняет объекты раньше, чем ожидалось

У меня есть класс соответствия с использованием Core Data. По моему мнению, я создаю экземпляр Match в контексте. Я использую и изменяю объект соответствия в контроллере, а затем имею кнопку, которая сохраняет экземпляр в контексте. Но если я закрою приложение без нажатия кнопки сохранения, экземпляр Match по-прежнему будет сохранен.

Вот мое объявление объекта:

class ViewController: UIViewController {

//(...)

let match = Match(context: AppDelegate.viewContext)

   override func viewDidLoad() {
   super.viewDidLoad()
   }

//(...)
}

И вот мое спасение, которое вызывается кнопкой:

@IBAction func saveMatch() {   
    try? AppDelegate.viewContext.save()
    self.dismiss(animated: true, completion: nil)
}

Всего 1 ответ


Просмотрите остальную часть кода, где еще вы вызываете save() . Если вы используете обертки вокруг Core Data, найдите, где они вызывают save() . Вероятно, у вас есть что-то связанное с applicationDidEnterBackground . Добавьте точку останова в save() и посмотрите, как это называется.


Есть идеи?

10000