개인과제 피드백을 받았다.
데이터 모델을 만들 때 데이터 타입 사용법을 조금 더 다양하게 알면 좋겠다 싶어서 많이 쓰일만한 것 위주로 몇 가지 더 공부해보았다.
https://inpa.tistory.com/entry/ORM-%F0%9F%93%9A-%EC%8B%9C%ED%80%84%EB%9D%BC%EC%9D%B4%EC%A6%88-%EB%AA%A8%EB%8D%B8-%EC%A0%95%EC%9D%98%ED%95%98%EA%B8%B0
위 블로그 코드를 참고하여 정리해보았다.
- 데이터 타입
1) 정수형: type: Sequelize.INTEGER
2) 문자형: type: Sequelize.STRING
3) 날짜데이터 : type: Sequelize.DATE
4) 특정 값만 들어가게 하고 싶을 때 : type: Sequelize.ENUM('val1', 'val2')
5) 참,거짓 : Sequelize.BOOLEAN
// status 값에 for-sale, sold-out만 들어갈 수 있고 for-sale이 기본값으로 지정되게 함
status: {
type: Sequelize.ENUM('for-sale', 'sold-out'),
defaultValue: 'for-sale'
},
}
- primaryKey: 기본키 인지 아닌지 설정 ( default: false )
- unique: Unique 조건인지 아닌지에 대한 옵션
- allowNull : true인 경우 빈 값 허용 false일 경우 허용x
- defaultValue : 미입력시 기본셋팅값
- timestamps : true로 설정하면 자동으로 createdAt,updatedAt 자동으로 셋팅됨
- paranoid : true로 설정하면 deletedAt 자동으로 셋팅됨
- underscored : true이면 column이름을 camalCase가 아닌 underscore방식으로 사용