ORM 설정
프로젝트 폴더에 Sequelize 적용
4가지 폴더(config, models, migrations, seeders) 생성
모델 생성
모델(테이블)을 생성하여 테이블 작성을 위한 설계도를 작성한다.
설계도 같은 개념의 model 폴더의 url.js
,
실제 db에 적용되어 지는 migrations 폴더의 20210901041011-create-url.js
파일 이 생성된다.
npx sequelize-cli model:generate --name url --attributes url:string,title:string,visits:integer
id, createdAt, updatedAt 필드는 자동 생성된다.
데이터 타입은 Sequlize에서 정의하는 방식을 따라서 지정한다.
기본값(defaultValues) 적용을 위해 모델 파일 및 마이그레이션 파일을 수정한다.
Migrations
실제 db에 모델을 적용한다.
db 내에 SequelizeMeta
테이블을 확인한다.
마이그레이션 수행 로그 테이블 이라고 생각하면 될듯하다.
마이그레이션 파일을 실행하여 테이블을 생성한다.
실제 적용은 마이그레이션 파일을 보고 생성을 하므로 모델 파일과 마이그레이션 파일은 싱크가 맞아야 한다. (수정사항이 있으면 같이 수정해야 한다.)
아래 명령어를 통해 실행한 마이그레이션을 취소할수도 있다.
마이그레이션 파일 코드 내에 up
, down
이 존재한다.
up
은 마이그레이션 실행시 적용되는 코드
down
은 마이그레이션 실행 취소시 적용되는 코드