Sequelize Migration config.json更改

时间:2014-10-21 12:15:50

标签: json sequelize.js

Sequelize的迁移创建了一个config.json,我可以在其中定义开发,生产和实时环境的数据库数据。因此它知道在哪个数据库中运行迁移文件。

但是我们已经在特定文件夹中定义了这些数据,这些数据位于每个环境的特定配置文件中,我们将其用于当前应用程序。我想在sequelize迁移中使用我们应用程序的当前数据库配置...谁知道如何做到这一点?

或者是否有可能在sequelize的迁移中使用变量,在我们自己的文件中引用数据库的登录数据?

1 个答案:

答案 0 :(得分:2)

我们通过将Sequelize迁移配置读入应用配置解决了类似问题。

在我们的 config 文件夹中,我们有一个index.js。这是它的样子;

var fs = require('fs'),
    conf = require('config-node')({ dir: 'config' });


// override the `sql` config using the configuration file used for
// Sequelize migrations

if (fs.existsSync(__dirname + '/config.json')){
  conf.sql = require('./config')[process.env.NODE_ENV || 'development'];
}

module.exports = conf;

我们像这样运行我们的主应用程序;

NODE_ENV=production node main.js

我们将配置导入main.js

var config = require('./config');  // this requires the index.js