node.js - 创建模型后 Sequelize 迁移

标签 node.js amazon-web-services sequelize.js

我正在寻找从 github 拉取以来应用程序中已有的模型创建迁移和创建数据库的方法。我正在使用 AWS,因此需要在应用程序构建上运行迁移构建命令并将其与 AWS RDS 连接。到目前为止我所做的 - 使用以下内容创建了 .sequelizerc

const path = require('path');

module.exports = {
  'config': path.resolve('lib', './app.database.js'),
  'models-path': path.resolve('lib', './models'),
  'seeders-path': path.resolve('lib', './seeders'),
  'migrations-path': path.resolve('lib', './migrations')
}

并将所有模型存储在 /lib/models/ 文件夹中,例如具有以下结构

module.exports = (sequelize, DataTypes) => {
const Init = sequelize.define('Init', {
    id: {
        type: DataTypes.INTEGER,
        primaryKey: true,
        autoIncrement: true,
    },
    name: DataTypes.STRING,
    version: DataTypes.STRING,
}, {
    tableName: 'oc_init',
    timestamps: false
});

return Init;
};

需要提到的是,一些模型本身已经有了原型(prototype),并且正在使用其他库,例如 bcrypt 等。

因此,在应用程序构建之后,我尝试运行 node_modules/.bin/sequelize db:migrate 并出现以下错误

No migrations were executed, database schema was already up to date.

但是当我检查远程数据库(亚马逊 RDS)时,我只能看到创建的 SequelizeMeta 表。我做错了什么?如何在本地计算机上创建迁移以便可以在 AWS 上迁移数据?

最佳答案

解决方案是我自己为每个模型创建迁移,描述其内容并运行 sequelize db:migrate。似乎没有方法可以从已创建的模型创建迁移文件。

关于node.js - 创建模型后 Sequelize 迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51083805/

相关文章:

javascript - 如何在 Linux 上获取 Sublime Text 3 的 console.log 输出?

angularjs - 从表单保存到 mongodb 集合信息的困难

amazon-web-services - 从本地计算机将文件上传到AWS

mysql - 下划线被删除

mysql - 从sequelize关联检索值时出错

node.js - 将对象放置到 mongoDb 中的根级别

javascript - Node 记录未捕获的异常(Winston V3)

amazon-web-services - Windows AMI 的 AWS CloudFormation/var/log/cloud-init-output.log 等效项

ruby-on-rails - Elastic beanstalk Rails - 即使我设置了暂存环境,也默认为生产环境

macos - 如何增加 max_locks_per_transaction