Le dialecte doit être explicitement fourni que de v4.0.0
J'ai travaillé sur un projet NodeJS qui utilise une base de données PostgreSQL.
Je suis en train de mettre en œuvre la migration de la base de données. Aussi, à l'aide de Sequelize. Après la mise en place de la migration de dossier et de configuration, il déclenche une erreur lors de l'exécution de db:migrate
L'erreur est:
"Dialecte doit être explicitement fourni que de v4.0.0"
- // avec l'uri const sequelize = new Sequelize('postgresql://localhost:5432/db_name')
Vous devez vous connecter pour publier un commentaire.
Solution pour moi était basé sur ce que j'avais mis pour mon
NODE_ENV
variable.echo $NODE_ENV
Si vous n'avez pas quelque chose de fixé pour cette variable, essayez de définir avec les éléments suivants:
export NODE_ENV=development
Si une valeur est présent, assurez-vous que vous avez une entrée dans votre fichier de config pour que valeur. Pour moi, j'aime utiliser
local
. J'ai donc dû mettre à jour ma config pour cela:Vérifier le dialecte fois.
const Sequelize = require('sequelize');
//Option 1: Passing parameters separately
const sequelize = new Sequelize('database', 'username', 'password', {
host: 'localhost',
dialect: /* one of 'mysql' | 'mariadb' | 'postgres' | 'mssql' */
});
avez-vous oublié d'ajouter le dialecte de votre config?
voir: http://docs.sequelizejs.com/manual/tutorial/migrations.html
Vérifier votre fichier de configuration (env noms)
JS:
si vous n'avez pas d'installation de tout .des variables d'environnement avant de lancer votre
npm server
Vous êtes susceptible d'obtenir cette erreur. donc, chaque fois que vous redémarrez l'application des modifications.
vous devez exporter de nouveau
J'ai eu la même erreur et j'ai vu cette erreur dans le code.
Changé mon code avec cela et le problème est résolu: