如何使用Knex CLI

时间:2018-05-23 11:28:04

标签: node.js npm knex.js

我已经在我的Node项目中安装了Knex,并且一切都非常好而且很棒...到目前为止......

现在我深入研究Knex并面临迁移。我找到的所有文档都讨论了运行命令,例如" knex migrate:latest"等等。当我尝试从(Windows)命令行运行此类命令时,我得到的结果是一个错误告诉我' knex'是一个未知的命令。

我不是npm和节点专家,只是足以让基础知识运行。在深入了解knex节点包时,我找到了一个cli.js文件的配置文件,该文件位于' bin下。 ' package.json'中的部分。我不明白这些配置,甚至阅读关于这个' bin'的npm文档。部分并没有让我更清楚。

所以我的问题在这里: 我在Windows 10上安装了一个像' knex'我的项目的本地。 Knex附带一个cli。从控制台调用cli我需要做什么?

5 个答案:

答案 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。