Swift/SwiftUI

[SwiftUI] Core Data 로 CRUD 해보자

insub4067 2022. 4. 21. 00:26

설정

Model File에서 내가 정의한 entity랑 attribute 들이다

밑에 relation이 관계인데 

log.account 하면 로그랑 관계된 Account의 instance에 접근하고

account.log 하면 account랑 관계된 log에 접근하다

inspector 에서 보면 account : log 는 one to many 라고 설정해놧다

말인 즉슨 하나의 account는 여러개의 log를 가질수 있다



이 다음 DataController 만들고

environment 등록하고 해야되는데 

이전에 올려 놓은 글 보자

일단 Body위에 이렇게 선언해 주자

대충 environment에 등록된 뭐시기 갖다 쓰겠단 말임


Create

 

class DataController 안에 method 하나 만들어줬다

계좌 만들꺼임

AccountDataController라는 class안에

CreateAccount method 갖다 쓸껀데

이런식으로 parameter 넣어 주면됨


Delete

xcode가 try catch로 감싸라 그래서 그랬음

이런식으로 불러다 쓰면됨


Create in Relation

(Log 찍기)

계좌 만들었으니 log 찍어서 입금할꺼임

일단 log instance 만들고

관계 맺을 account instance 전달 받고 지목해주고

계좌에서 금액 빼주고

로그 남기자

그리고 여긴 호출 할때

 

아무튼 이런식으로 쓰면됨


Read

계좌 만들고 입금했으니

나의 계좌 Array 불러 보자

대충 이런식으로 불러오면 됨

계좌 만들어진 최신순으로 sorting한다는 얘기임

대충 이런식으로 코드짜면

이런식으로 View 만들어질꺼임