knex seed?
knex
에서 seed
를 사용하면 마이그레이션 파일과 상관없이 테스트 또는 시드 데이터로 데이터베이스를 체울 수 있습니다.
시드 파일 생성 방법
1 | knex seed:make `생성할 파일 이름` |
위 코드를 실행하면 다음과 같이 폴더와 파일이 생성됩니다.seed
의 디렉토리는 상대 경로 여야합니다.
따라서 ./seeds
의 경로에 파일이 생성됩니다.seed
파일은 생성할 파일 명을 바꿔서 실행하게 되면 여러개를 만들 수 있습니다.seed
파일의 실행은 migration
과 다르게 사전순으로 실행됩니다.
사전순으로 실행 되기 때문에 foreign key로 연결되어 있다면 순서를 고려하여 seed
파일을 생성해야 합니다.
시드 사용 방법
1 | exports.seed = function(knex, Promise) { |
처음 seed
를 생성하게 되면 위 코드와 같이 기본 seed
파일이 생성됩니다.
1 | const faker = require('faker') |
위 코드와 같이 원하는 데이터 생성을 원하는대로 넣고 실행하게 되면 dummy data
를 생성 할 수 있습니다.
위에서 작성한 코드를 실행하려면 다음과 같이 터미널에서 실행하면 됩니다.
1 | knex seed:run |
위 코드를 실행하게 되면 MySQL
서버에 dummy data
가 들어가게 됩니다.