我已经在我的Node项目中安装了Knex,并且一切都非常好而且很棒...到目前为止......
现在我深入研究Knex并面临迁移。我找到的所有文档都讨论了运行命令,例如" knex migrate:latest"等等。当我尝试从(Windows)命令行运行此类命令时,我得到的结果是一个错误告诉我' knex'是一个未知的命令。
我不是npm和节点专家,只是足以让基础知识运行。在深入了解knex节点包时,我找到了一个cli.js文件的配置文件,该文件位于' bin下。 ' package.json'中的部分。我不明白这些配置,甚至阅读关于这个' bin'的npm文档。部分并没有让我更清楚。
所以我的问题在这里: 我在Windows 10上安装了一个像' knex'我的项目的本地。 Knex附带一个cli。从控制台调用cli我需要做什么?
答案 0 :(得分:3)
如果您尚未在全球范围内安装knex(我不推荐),您可以从node_modules/.bin/knex
找到客户。
当您将软件包本地安装到某个目录时,所有" bin"可执行文件在node_modules/.bin
下自动链接。如果您使用package.json脚本中的这些脚本,npm会自动将node_modules/.bin
添加到路径中,因此在包json中,您不必引用node_modules/.bin/knex
,但仅knex
就足够了。
答案 1 :(得分:2)
在您的控制台中,尝试$ npx knex migration:latest 它帮助了我
答案 2 :(得分:1)
如果您的项目中安装了knex,则可以通过在package.json
中添加一个简单的脚本来使其通过Shell使用。
"scripts": {
"knex": "knex"
}
现在,您可以将knex cli与npm run knex
一起使用,或者,如果您使用yarn,可以将yarn knex
与一起使用。
答案 3 :(得分:0)
首先输入“ npx knex”以访问knex模块可用的选项和命令。为了能够使用捆绑在一起的Knex cli,您必须从打算从中创建文件的任何路径访问knex模块。例如,假设我位于migrations目录中,而node_modules文件夹位于同一路径的上方,我将以这种方式访问Knex模块'../node_modules/.bin/knex migrate:make create-user-table.js ”,以便能够创建“ create-user-table.js”迁移文件。我希望我足够清楚。
答案 4 :(得分:0)
如何使用Knex CLI
Unix Shell
本地
npm i knex
NODE_ENV=development npx knex migrate:list
# or
export NODE_ENV=development && npx knex migrate:list
全球
npm i knex -g
NODE_ENV=development knex migrate:list
# or
export NODE_ENV=development && knex migrate:list
Windows Shell
本地
npm i knex
set NODE_ENV=development&& npx knex migrate:list
全球
npm i knex -g
set NODE_ENV=development&& knex migrate:list
考虑使用 Git Bash Shell,除了包括 Windows 环境外,它的行为类似于 Unix shell。