node.js – 如何使用后续迁移/种子插入初始数据?

我正在尝试创建我的初始迁移来填充测试数据库,但我无法使其工作.这是我在迁移中所拥有的

'use strict';

module.exports = {
  up: function (queryInterface,Sequelize) {
    return [
      queryInterface.bulkInsert('Users',[
        { username: "user1" },{ username: "user2" }
    ])];
  },down: function (queryInterface,Sequelize) {
    return queryInterface.dropTable('Users');
  }
};

我得到这个错误

== 20151024144833-create-conjugation: migrating =======
{ [SequelizeUniqueConstraintError: Validation error]
  name: 'SequelizeUniqueConstraintError',message: 'Validation error',errors: [],fields: [] }

必须有一个更简单的方法来做到这一点.我已经检查过其他SO问题,但在当前版本的续集中语法已经发生变化.

UPDATE

好的,我意识到我的错误:我假设续集将照顾时间戳.这解决了这个问题:

up: function (queryInterface,Sequelize) {
  console.log(User);
  return [
    queryInterface.bulkInsert('Users',[
      { username: "user1",createdAt: Date.Now(),updatedAt: Date.Now() },{ username: "user2",updatedAt: Date.Now() }
    ])
  ];
}

但是我仍然想知道这是否是种植我的数据库的正确方式.有没有办法使用User.create({})?

解决方法

可以使用另一种方法sequelize fixtures,您可以使用声明为json文件或其他格式的认数据初始化表.

相关文章

这篇文章主要介绍“基于nodejs的ssh2怎么实现自动化部署”的...
本文小编为大家详细介绍“nodejs怎么实现目录不存在自动创建...
这篇“如何把nodejs数据传到前端”文章的知识点大部分人都不...
本文小编为大家详细介绍“nodejs如何实现定时删除文件”,内...
这篇文章主要讲解了“nodejs安装模块卡住不动怎么解决”,文...
今天小编给大家分享一下如何检测nodejs有没有安装成功的相关...