21.10.22 11:30 작성
·
112
0
class CoreDataManager{
static let shared = CoreDataManager()
var context : NSManagedObjectContext{
return persistentContainer.viewContext
}
var todoList = [TodoList]()
private init(){
}
func fetchData(){
let fetchRequest : NSFetchRequest<TodoList> = TodoList.fetchRequest()
do{
try context.fetch(fetchRequest)
}catch{
print(error)
}
}
// MARK: - Core Data stack
lazy var persistentContainer: NSPersistentContainer = {
let container = NSPersistentContainer(name: "TodoApp")
container.loadPersistentStores(completionHandler: { (storeDescription, error) in
if let error = error as NSError? {
fatalError("Unresolved error \(error), \(error.userInfo)")
}
})
return container
}()
// MARK: - Core Data Saving support
func saveContext () {
let context = persistentContainer.viewContext
if context.hasChanges {
do {
try context.save()
} catch {
let nserror = error as NSError
fatalError("Unresolved error \(nserror), \(nserror.userInfo)")
}
}
}
}
답변 1
0
2021. 10. 22. 12:05
안녕하세요
질문주신 내용처럼 실제로도 싱글톤으로 따로 만들어 많이 사용하고 있습니다.
이런 방식이 문제되진 않으니 편하게 사용하시면 될 것 같습니다.