0916
전체적인 흐름은 다음과 같다.
react를 이용하여 웹페이지를, express를 설치하여 서버를 만들고 서로 통신
웹에서 이미지, 성별, 이름을 적고 제출하는 기능 구현
제출 버튼을 누르면 S3에 이미지를 업로드 하고
동시에 이미지 URL과 기타 데이터를 MySQL에 저장
기능별로 Page / Component / Container 로 풀더를 나누어 작성
폴더구성
App.js
page - Home / Upload
container - HomeContainer / UploadContainer
component - HomeComponent / UploadComponent
위에서 부터 밑으로 내려가는 구조
1) App.js에서는 Home과 Upload를 임포트하여 보여줌
2) Page의 Home과 Upload 에서는 각각의 Container을 임포트해서 return 시켜줌
3) Container 은 웹에서의 다양한 기능 및 통싱을 구현. rutrun값에 Componet를 임포트하여 태그 안에 구현한 기능들을 넣어 return 시켜줌
4) Component 는 css 및 기능들의 배치를 담당!
Database 복습 (2) 에서 구축한 express 환경 그대로 사용.
라우터와 컨트롤러를 분리하고 컨트롤러에서 MySQL로 query를 날려 데이터 조회, 업로드 및 수정 삭제
cascade:
개체를 변경 / 삭제 할 때 다른 개체가 변경 / 삭제할 개체를 참조하고 있을 경우
함께 변경 / 삭제
-> 부모 변경 시 자식도 함께 변경
restrict:
개체를 변경 / 삭제 할 때 다른 개체가 변경 / 삭제할 개체를 참조하고 있을 경우
개체의 변경 / 삭제 취소(제한)
-> 자식이 있을 시 부모의 변경 제한
no action:
개체를 변경 / 삭제 할 때 다른 개체가 변경 / 삭제할 개체를 참조하고있는 경우
변경 / 삭제할 개체만 변경 / 삭제되고 참조하고있는 개체는 변동 없음
-> 부모 변경 시 자식은 그대로
set null:
개체를 변경 / 삭제할 때 다른 개체가 변경 / 삭제할 개체를 참조하고있을 경우
참조하고 있는 값을 NULL로 세팅
-> 부모 변경 시 자식은 Null값