[iOS/Swift] 코어데이터 사용하기

최정은·2023년 9월 23일
0

Swift

목록 보기
25/27
  • 프로젝트 생성 시 아래와 같이 Storage -> Core Data로 설정 후 Next 클릭

  • Add Entity 클릭 후 Attributes 추가 ! ( 우측 Codegen 은 Manual/None으로 설정 )

  • AppDelegate에 다음과 같은 코드가 추가되는 것을 확인할 수 있다.

  • 코어데이터 가져오는 함수 작성

private let appDelegate = UIApplication.shared.delegate as? AppDelegate
    lazy var context = appDelegate?.persistentContainer.viewContext
    
    let modelName: String = "ToDoData"
    
    func getToDoDataList() -> [ToDoData] {
        var toDoList: [ToDoData] = []
        
        if let context = context {
            
            let request = NSFetchRequest<NSManagedObject>(entityName: self.modelName)
            let dateOrder = NSSortDescriptor(key: "date", ascending: false)
            
            request.sortDescriptors = [dateOrder]
            
            do{
                if let fetchedToDoList = try context.fetch(request) as? [ToDoData] {
                    toDoList = fetchedToDoList
                }
            }catch{
                print("가져오는 것 실패")
            }
        }
        
        return toDoList
    }

0개의 댓글