-
SwiftUI Core Data 89 - 데이터(Entity(Movie)) 저장하기SwiftUI 100 레시피/Core Data 2022. 7. 1. 11:52
#1. CoreDataManager, saveMovie함수 추가
import Foundation
import CoreData
class CoreDataManager{
let persistentContainer: NSPersistentContainer
init(){
persistentContainer = NSPersistentContainer(name: "HelloCoreDataModel")
persistentContainer.loadPersistentStores{(description, error) in
if let error = error {
fatalError("Core Data Store failed to initialize \(error.localizedDescription)")
}
}
}
//Save Entity
func saveMovie(title: String){
let movie = Movie(context: persistentContainer.viewContext)
movie.title = title
do{
try persistentContainer.viewContext.save()
print("Movie saved!")
} catch{
print("Failed to save movie", error )
}
}
}
#2. ContentView
import SwiftUI
struct ContentView: View {
let coreDM: CoreDataManager
@State private var movieName: String = ""
var body: some View {
VStack{
TextField("Enter movie name", text: $movieName).textFieldStyle(RoundedBorderTextFieldStyle())
Button("Save"){
coreDM.saveMovie(title: movieName)
}
Spacer()
}.padding()
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView(coreDM: CoreDataManager())
}
}
'SwiftUI 100 레시피 > Core Data' 카테고리의 다른 글
SwiftUI Core Data 92 - 데이터 업데이트 (0) 2022.07.01 SwiftUI Core Data 91 - 데이터 삭제 (0) 2022.07.01 SwiftUI Core Data 90 - 데이터 가져오기 (0) 2022.07.01 SwiftUI Core Data 88 - Core Data 초기화 (0) 2022.07.01 SwiftUI Core Data 87 - Core Data Model 생성 (0) 2022.07.01