나의 발자취
앱 제작 과정 (6) DB setup 완료, seed data 넣기 완료 본문
드디어 back and forth 를 하며 모델-마이그레이션-시드 과정 중에서 하나라도 오류를 발견하면 연쇄적으로 고쳐서 이제 거의 에러가 없는 부분을 다 고쳤고,,seed 데이터를 다시 지웠다가 집어넣었다가 하는 과정에서 sequelizer 의 sequence 테이블에 의해 예전에 부여되었던 PK의 id 이후의 번호부터 넘버링되기 때문에 또 이를 위한 과정도 진행해야했다.
아래 과정을 정말 반복했다.
- (psql 접속 상태에서) 마이그레이트 지우기
DO $$ DECLARE
r RECORD;
BEGIN
FOR r IN (SELECT tablename FROM pg_tables WHERE schemaname = 'public') LOOP
EXECUTE 'DROP TABLE IF EXISTS ' || quote_ident(r.tablename) || ' CASCADE';
END LOOP;
END $$;
2. 마이그레이션 실행
npx sequelize-cli db:migrate
3. (psql 접속 상태에서) 순차적으로 하는거 초기화
TRUNCATE TABLE "BalanceVotes", "Categories", "ChallengeImages", "ChallengeParticipations", "Challenges", "Comments", "Likes", "Messages", "PostImages", "Posts", "Reports", "Rewards", "Users" RESTART IDENTITY CASCADE;
4. 시드 데이터 다 적용
npx sequelize-cli db:seed:all
5. 안된건 따로 적용
npx sequelize-cli db:seed --seed 20241116082809-demo-message.js
npx sequelize-cli db:seed --seed 20241116082810-demo-postImage.js
npx sequelize-cli db:seed --seed 20241116082811-demo-report.js
npx sequelize-cli db:seed --seed 20241116082812-demo-reward.js
npx sequelize-cli db:seed --seed 20241116082813-demo-balanceVote.js
테이블마다 정상적으로 다 채워진 모습을 보니 이제 클라우드 스토리지로 옮기는 작업을 향후 해야겠단 생각.
'프로젝트' 카테고리의 다른 글
커뮤니티 신고 기능 구현 (0) | 2024.11.27 |
---|---|
이미지 파일 업로드 기능 구현 (feat. BLOB, BYTEA), 이틀간 작업 내역 (1) | 2024.11.20 |
앱 제작 과정 (6) DB 설계 및 초기 프론트 세팅 (DB 수정 반영 후 백엔드 개발 들어가기, Custom Style 적용) (0) | 2024.11.18 |
앱 제작 과정 (6) 백엔드 - seed data 만들면서 DB 설계 오류 발견하기 (0) | 2024.11.16 |
앱 제작 과정 (5) WBS 작성 (0) | 2024.11.13 |
Comments