이전 블로그에 작성했던 포스트입니다.
Sequelize Migrate와 Seed를 사용하여 모델을 생성, 초기적재 등 수행합니다.
$ npx sequelize model:generate --name user --attributes name:string
Sequelize CLI [Node: 16.17.1, CLI: 6.5.1, ORM: 6.25.1]
New model was created at D:\prj\project2\team12\back\src\models\user.js .
New migration was created at D:\prj\project2\team12\back\src\models\migrations\20221019110308-create-user.js .
npx sequelize db:migrate
npx sequelize seed:generate --name user
const { v4: uuidv4 } = require("uuid");
("use strict");
const created_at = new Date();
const updated_at = new Date();
const deleted_at = new Date();
/** @type {import('sequelize-cli').Migration} */
module.exports = {
async up(queryInterface) {
return queryInterface.bulkInsert(
"item",
[
{id: uuidv4(), item_name: "옷01", item_type: '["남자", "상의", "반팔티"]', item_desc: "아끼는 옷 입니다.", status: "inStock", created_at, updated_at, userId: "159129d8-0249-4500-b6ec-028056fa8eef"},
{id: uuidv4(), item_name: "옷02", item_type: '["남자", "상의", "반팔티"]', item_desc: "아끼는 옷 입니다.", status: "inStock", created_at, updated_at, userId: "159129d8-0249-4500-b6ec-028056fa8eef"},
{id: uuidv4(), item_name: "옷03", item_type: '["남자", "상의", "반팔티"]', item_desc: "아끼는 옷 입니다.", status: "inStock", created_at, updated_at, userId: "159129d8-0249-4500-b6ec-028056fa8eef"},
{id: uuidv4(), item_name: "옷04", item_type: '["남자", "상의", "반팔티"]', item_desc: "아끼는 옷 입니다.", status: "inStock", created_at, updated_at, userId: "159129d8-0249-4500-b6ec-028056fa8eef"},
{id: uuidv4(), item_name: "옷05", item_type: '["남자", "상의", "반팔티"]', item_desc: "아끼는 옷 입니다.", status: "inStock", created_at, updated_at, userId: "159129d8-0249-4500-b6ec-028056fa8eef"},
]
);
},
async down(queryInterface, Sequelize) {
/**
* Add commands to revert seed here.
*
* Example:
* await queryInterface.bulkDelete('People', null, {});
*/
await queryInterface.bulkDelete("item", null, {});
},
};
npx sequelize db:seed:all
https://medium.com/prisma-korea/번역-마이그레이션과-sequelize-cli-튜토리얼-3926c0a9eae6