오늘의 문제
- db설계 수정되어 sequelize로 테이블 및 외래키 설정 추가하는데 아래 이미지같은 에러가 뜸.
- 현재 세탁 상태를 업데이트 하는데 내 생각은 컨트롤 -> 서비스 -> 레파짓토리 -> db수정 인데 거꾸로 되고있음.
내가 시도해본 것
- 마이그레이션 파일 새로 작성, 구글링
- 콘솔로 찍어보고 튜터님을 찾아갔다.
어떻게 해결했나
- 외래키를 추가하려는 테이블에 데이터가 들어있어서 발생하는 문제였다. wash_list테이블의 데이터를 삭제하고 마이그레이트하니 외래키설정이 완료되었다.
- 비동기 처리때문에 컨트롤 -> 서비스 -> 레파짓토리 -> 서비스 -> 레파짓토리 -> db수정 -> 레파짓토리 -> 서비스 -> 컨트롤 순으로 이동하고 있었다.
새롭게 배우거나 깨달은건 무엇인가
- 참조 무결성을 위배한거 같다. 새로만든 테이블(shop)에는 아무런 데이터가 없었고 기존 wash_list테이블에는 데이터가 들어있었는데 새로운 컬럼이 생겼지만 shop테이블에는 데이터가 없었기때문에 두 컬럼의 값이 달라 발생하는 문제였다.
- 레이어드 아키텍쳐가 동작하는 구조를 좀 더 이해하게 되었고, 중간중간 콘솔로그로 내가 생각한 순서대로 숫자를 매겨 그대로 작동하는지 테스트 해보는것도 좋은 방법인거 같다.