有没有办法填充数据库 (迁移+种子) 使用sequelizejs ORM?
我的迁移
'use strict';
/**
* Module dependencies.
*/
var Schema = require('../src/schemas/users');
module.exports = {
up: function (queryInterface, Sequelize) {
return queryInterface.createTable(
Schema.name,
Schema.definition(Sequelize)
);
},
down: function (queryInterface, Sequelize) {
return queryInterface.dropTable(Schema.name);
}
};
看看Node Sequelize migrations/models is it possible to share the same code?
'use strict';
/**
* Module dependencies.
*/
var Async = require('async');
var Models = require('../src/models');
var User = Models.users;
/**
* Users to insert.
*/
var users = [
{
firstname: 'abcdefghijklmnopqrstuvwxyz',
lastname: 'abcdefghijklmnopqrstuvwxyz',
email : 'abcdefghijklmnopqrstuvwxyz@abcdefghijklmnopqrstuvwxyz.abcdefghijklmnopqrstuvwxyz',
username:'abcdefghijklmnopqrstuvwxyz',
password:'abcdefghijklmnopqrstuvwxyz'
}
];
var calls = [];
function createUserPromise(current, index, users) {
calls.push(function(callback) {
User
.create(current)
.then(function(user) {
callback(null, user);
})
.catch(function(err){
return callback(err);
});
});
}
users.forEach(createUserPromise);
Async.parallel(calls , function(err, results){
if(err){
console.log(err);
}
else{
var info = results.map(function(result){
return result.dataValues;
});
console.log(info);
}
process.exit();
});
答案 0 :(得分:2)
按照sequelize-cli中def select2(value, **options)
first("#select2-#{options[:from]}-container").click
find(".select2-results__option", text: value).click
end
的{{1}}搭建模板:
seed:create
然后运行你的种子:
$ node_modules/.bin/sequelize seed:create --name my-seed-name