설치에 대한 설명은 생략하겠다.
1. Model 생성(migration 파일 생성)
$ npx sequelize-cli model:generate --name User --attributes firstName:string,lastName:string,email:string
2. Migrate
$ npx sequelize-cli db:migrate
(취소) npx sequelize-cli db:migrate:undo
3. Update a column ( 본인의 경우 unique 설정)
1) $npx sequelize-cli migration:create --name migration_file_name
2) 해당 파일 변경
await queryInterface.changeColumn('Users', 'email', {
type: Sequelize.STRING,
allowNull: false,
unique: true,
});
※반드시 "type"이 포함되어야 한다. 아니면 에러가 발생한다.
3) $npx sequelize-cli db:migrate
4) model(models/user.js) 파일 수정
참고 링크(sequelize-cli를 사용)
dev.to/adefam/create-update-add-and-delete-sequelize-migration-eoa
4. Create (=insert)
try {
const result = await db.Users.create({
email: userEmail,
uid: uid,
nickname: nickname
})
res.status(200).json({"message": "가입 성공"});
} catch (e) {
res.status(401).json({"message": "중복되는 정보라 실패"});
}
※하찮은 실수 정리 : res.status(401) -> res객체 status값에 "401"이 들어가기 "만" 함.
res.status(401)만 적으면 상대측에서 응답을 받을 수 없음.(대기 중이기 때문)
그렇기 때문에 뒤에 json을 붙여서 전송 시켜줘야 한다.
(이 증상을 오류로 착각하여서 먼길 돌아감)
참고 링크(sequelize를 사용한 CRUD)
'서버 > nodejs' 카테고리의 다른 글
node.js 에서 middleware Skip 하는 방법 (0) | 2021.05.11 |
---|---|
갑자기 궁금해져서 정리하는 js 변수 선언 방식 (0) | 2021.05.11 |
Sequelize 사용 기록(CRUD/Pagination) - 03 (0) | 2021.04.27 |
너무 헤매서 기록하는 sequelizer 사용 일지 02 (0) | 2021.04.17 |
내가 헤매서 쓰는 Firebase <-> Nodejs 연동 (0) | 2021.04.08 |