-bash:sequelize:找不到命令

Tzv*_*lev 6 npm sequelize.js

我刚刚在我的项目根目录中运行了npm install --save sequelize pg pg-hstore,现在我无法调用sequelize init.我收到错误:-bash:sequelize:command not found.我究竟做错了什么?

Del*_*ino 20

原因是:在你的cli上没有全局安装sequelize.要获得所有cli的续集访问权限.

npm install -g sequelize-cli
Run Code Online (Sandbox Code Playgroud)

'-g'表示全局,这将允许您在app目录中的任何位置访问sequelize命令.

之后你可以做到: sequelize model:generate --name User --attributes firstName:string,lastName:string,email:string,password:string


the*_*tto 12

我更喜欢避免安装全局 npm 包。如果你sequelize在你的依赖package.json,你可以利用sequelize-cli通过npx

$ npx sequelize-cli <command>.

例如,您可以$ npx sequelize-cli migration:generate --name add-a-column创建一个迁移文件。


Tzv*_*lev 8

我想回答我自己的问题.全局npm安装路径对我的计算机来说是错误的.

npm config获取前缀

然后我跑去把它应该的路径.这个问题给了我很多头痛.希望它可以帮助某人.

npm config set prefix/usr/local


小智 8

遇到相同的问题,然后指出这sequelize-cli是前进的方法。

npm install -g sequelize-cli
Run Code Online (Sandbox Code Playgroud)


小智 6

我遇到了这个问题并通过运行解决了它

nvm install node --reinstall-packages-from=node
Run Code Online (Sandbox Code Playgroud)

然后重新安装

npm install -g sequelize-cli
Run Code Online (Sandbox Code Playgroud)

在这样做之前,我有一个不幸的节点版本管理器设置。我的电脑运行的是版本 10 之类的东西,但是在版本 8 使用的路径中安装了 sequelize。

现在一切都已更新并且可以正常工作。