sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvorfor Sequelize migration oprette tabel, men modeller kan ikke oprette forbindelse til en database

Guyz, jeg fandt et svar på mit problem,

i models/index.js

Jeg ændrer process.env.NODE_ENV til process.env.NODE_ENV.trim()

'use strict';

const fs = require('fs');
const path = require('path');
const Sequelize = require('sequelize');
const basename = path.basename(__filename);

// Before
const env = process.env.NODE_ENV || 'development';

// After
const env = process.env.NODE_ENV.trim() || 'development';    // add .trim()

const config = require(__dirname + '/../config/config.js')[env];
const db = {};

let sequelize;
if (config.use_env_variable) {
  sequelize = new Sequelize(process.env[config.use_env_variable], config);
} else {
  sequelize = new Sequelize(config.database, config.username, config.password, config);
}

...

db.sequelize = sequelize;
db.Sequelize = Sequelize;

module.exports = db;

package.json

"scripts": {
    "db:migrate:dev": "sequelize db:migrate --env development",
    "db:migrate:test": "sequelize db:migrate --env test",
    "db:migrate:production": "sequelize db:migrate --env production",
    "db:reset": "sequelize db:migrate:undo",
    "start": "SET NODE_ENV=production && babel-watch server/server.js",
    "dev": "SET NODE_ENV=development && babel-watch server/server.js",
    "test": "SET NODE_ENV=testing && babel-watch server/server.js"
  }

Eksempel , Lad os sige, hvis jeg starter serveren ved at skrive terminalen

npm run dev 
If i do console.log(process.env.NODE_ENV)  // output is "development " with a space.

Hence, 
 process.env.NODE_ENV === "development"  // return false
 or
 "development " === "development" // return false

Javascript Trim() fjerner mellemrum fra begge sider af en streng

Vil du have flere ressourcer? besøg venligst w3c




  1. Aktiver SSL-understøttelse for pgsql

  2. Anmodning indstillet i Concurrent Manager

  3. Sådan håndhæves brugerdefineret MySQL-kolonneformat

  4. mysql:hvordan gemmer man ORDER BY efter LEFT JOIN uden genbestilling?