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
fixturesfolder. - "auto-update" defaults: update the tables of the databse.
- "auto-update-data": update the tables, load datas from
fixturesfolder. - "auto-load-data": load datas from
fixturesfolder.
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.