运行序列化-m
在我的config.json中
"development": {
"username": "root",
"password": null,
"database": "**********",
"dialect": "postgres",
"protocol": "postgres",
"port": 5432,
"host": "127.0.0.1"
},
获取错误:
sequelize -m
Loaded configuration file "config/config.json".
Using environment "development".
/usr/local/lib/node_modules/sequelize/lib/transaction-manager.js:10
throw new Error("The dialect " + sequelize.getDialect() + " is not support
^
Error: The dialect postgres is not supported.
at new module.exports (/usr/local/lib/node_modules/sequelize/lib/transaction-manager.js:10:11)
at new module.exports.Sequelize (/usr/local/lib/node_modules/sequelize/lib/sequelize.js:128:31)
at Object.<anonymous> (/usr/local/lib/node_modules/sequelize/bin/sequelize:225:27)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:901:3
我的配置中是否存在问题,或者可能是其他问题?
8条答案
按热度按时间42fyovps1#
我也遇到过同样的问题,应该全局安装
pg
模块,命令如下:bgibtngc2#
不要!
您需要安装pg-hstore。
参见此处:https://github.com/sequelize/sequelize/issues/2949
nfs0ujit3#
你需要
另外,单独创建数据库,sequelize不会为您创建数据库。
pzfprimi4#
我已经在序列化目录中运行了
npm install --save pg
,现在一切都很好。v440hwme5#
在应用程序上做了一个strace。看起来Sequelize v2.x正在搜索“pg-native”。
第一个月
t40tm48m6#
我已经运行了root@#“npm install pg pg-hstore sequelize --保存”,它为我解决了这个问题。谢谢!
ipakzgxi7#
医生说:
随着Sequelizev1.6.0的发布,库独立于特定的方言。这意味着,你必须自己添加相应的方言库。另一个选择是使用附带方言库的sequelize包。
那么您可能已经错过了需要该库,请参见Sequelize docs。
nhjlsmyf8#
有关此问题的更详细线索,请参见sequelize issue
安装pg-native
npm i pg-native
为我的情况解决了问题(Hakkar上面也建议了)。npm
时遇到了同样的问题,所以这个问题与yarn
无关(如上所述)npm i --save pg
,还安装了npm i -D @types/pg
,因为我使用TSimport * as pg from 'pg';
和import { Sequelize } from 'sequelize';
,然后导入了const s = new Sequelize(connecStr, {dialectModule: pg})
node_modules
和package-lock.json
安装pg-native后,它解决了我的问题。
希望能有所帮助
相关问题: