This loopback component enables you to migrate the database and import datas automatcally for the loopback application.
- Install in you loopback project:
npm install --save loopback-component-auto-migrate
-
Create a component-config.json file in your server folder (if you don't already have one)
-
Configure options inside
component-config.json
:
{
"loopback-component-auto-migrate": {
"enabled": true,
"migration": "auto-migrate-data",
"models": ["Role"],
"fixtures": "./test/fixtures/"
}
}
enabled
[Boolean]: whether enable this component. defaults: truemigration
[String] : the migration ways:- "auto-migrate": drop and recreate the tables of the database.
- "auto-migrate-data": drop and recreate the tables, load datas from
fixtures
folder. - "auto-update" defaults: update the tables of the databse.
- "auto-update-data": update the tables, load datas from
fixtures
folder. - "auto-load-data": load datas from
fixtures
folder.
models
[array of String]: the models to process. defaults to the all models in the model-config.jsonfixtures
[String]: the datas folder to import.- the file base name is the lowercase model name with dash seperated if any.
- the file extension name is the data file format, the following format is supported:
- cson
- yaml
- json
Just enable it on component-config.json
.
or run node_modules/.bin/slc-migrate
directly.
set DEBUG=loopback:component:autoMigrate:*
env vaiable to show debug info.
Manually use it:
autoMigrate = require('loopback-component-auto-migrate/lib/auto-migrate');
autoMigrate(app, {models:['Role'], fixtrues: 'yourDataFolder'}).then()
- hasMany relation data supports.