由于配置文件,无法在sequelize中运行迁移

时间:2018-04-17 15:32:40

标签: node.js migration sequelize.js

我的配置文件存在问题 我设置它来使用环境变量 看起来像这样

module.exports = {
  db: {
    username: process.env.DB_USER,
    password: process.env.DB_PASS,
    database: process.env.DB_NAME,
    options: {
      host: process.env.HOST || "127.0.0.1",
      dialect: process.env.DIALECT || "postgres"
      }
    }
  }

当我想运行迁移时,我遇到了两个错误;

1

Loaded configuration file "config/config.js".

ERROR: Dialect needs to be explicitly supplied as of v4.0.0

2

ERROR: password authentication failed for user "jioke"

我的models / index.js文件看起来像这样;

var fs        = require('fs');
var path      = require('path');
var Sequelize = require('sequelize');
var basename  = path.basename(__filename);
var env       = process.env.NODE_ENV || 'development';
var config    = require(__dirname + '/../config/config.js');
var db        = {};

const sequelize = new Sequelize(
  config.db.database,
  config.db.user,
  config.db.password,
  config.db.options
)

....

在Google上搜索后,我创建了一个.sequelizerc文件。

const path = require('path');

module.exports = {
  'config': path.resolve('config', 'config.js')
}

我的.env文件看起来像这样;

DB_USER='test'
DB_PASS='test'
DB_NAME='test'
DIALECT='postgres'

我在Google上找到的解决方案似乎都没有效果

唯一一个人工作;正在将config.js文件转换为config.json。但我想利用环境变量,所以我不会在.env文件中提交我所拥有的内容。 这周围的方式是什么? 感谢。

0 个答案:

没有答案