✔️ORM 3

[초기 세팅 및 배포] DB Setting

우리 프로젝트의 DB스키마는 위의 그림과 같다. (※ 현재 2020/12/13일, 프로젝트를 진행하면서 DB구조가 약간 수정되었다. 수정된 DB 스키마는 아래 를 클릭하면 볼 수 있다. ) 더보기 1. 각 테이블 설명 schedules_date: 각 알람 하나하나의 정보를 담고있는 테이블 scedules_common: 한 주기를 가지고 있는 알람 정보 테이블 users: 사용자 정보 테이블 (login 필드는 'social'이면 소셜회원가입을 한 것, 'basic'은 일반 회원가입으로 가입한 것을가 다 나타낸다.) medicines: 약 정보가 담긴 테이블 2. Relationship user 1 - schedule_date n (schedules_udate) user 1 - schedule_common..

3. [Server] Sequelize DB 세팅(Oct 17~18, 2020 회고)

API 와 마찬가지로 DB schema역시 Client 파트와 Server 파트의 커뮤니케이션 및 합의가 많이 이루어지는 부분이다. 프로젝트를 진행하기 이전에는 DB에서 MVC 디자인 패턴으로 데이터를 가져오는 것은 Server 파트라고 생각했던 탓인지 client와 server 파트를 오가며 코드 리뷰하는데 이 부분이 은근 많은 걸림돌이 되었다. 그리고 프로젝트가 2/3 정도 마무리 될 쯤에 회원탈퇴에 대한 DB 처리 이슈가 큰 논의사항이 되었고, 그래서 많은 마이그레이션이 이루어졌는데, 만약 이러한 상황이 파트 불문하고 커뮤니케이션이 바로바로 이루어지지 않았다면 DB가 꼬여버리는 현상이 발생하게 된다. (ex. '같은 시점에서 저도 pull 받아왔는데 저는 왜 DB에서 데이터를 받아올 때 null 에..

33. ORM - Sequelize

+ Sequelize에 대해 공부한 것을 정리한 것입니다. 배우는 중이라 잘못된 내용이 있을 수 있으며 계속해서 보완해 나갈 것입니다. :)) 1. ORM이란 Object-Relational Mapping의 약자로 Object는 Javascript상의 그 '객체'가 맞다. 그리고 Relational은 Relational DB(관계형 DB)를 말한다. 이 그림과 같이 ORM을 통해 관계형 DB의 entity, record 들에 접근할 때 마치 Javascript에 있는 객체 혹은 classs를 다루듯이 취급 할 수 있다. 즉, 관계형 DB와 Javascript의 객체 사이의 통역사 역할을 담당하는 M-V-C 중 Model을 기술하는 도구이다. 2. ORM을 사용하는 이유 우리가 사용한는 객체 지향 프로그래..

Dev/SW Engineering 2020.09.05