【问题标题】:Programmatically run knex seed:run以编程方式运行 knex 种子:运行
【发布时间】:2019-04-01 22:55:55
【问题描述】:

要为数据库播种,knex 会运行以下脚本:

$ knex seed:run

我正在寻找一种以编程方式执行此操作的方法(即在我的 javascript 代码中)。我有以下编译没有任何问题,但它只返回一个承诺,实际上并没有做种子:

const knexInstance = require('knex')(config);
knexInstance.seed.run()

任何帮助表示赞赏。

【问题讨论】:

  • 分享你的 knexfile.js。

标签: node.js knex.js


【解决方案1】:

Knex 在后台使用 bluebird,因此要运行种子,您需要等待 promise 完成。

可以通过标准 JavaScript await 完成等待承诺。

await knexInstance.seed.run();

Knex 种子源代码:GitHub

【讨论】:

    【解决方案2】:

    您需要等待该承诺解决。例如

    await knexInstance.seed.run();
    

    【讨论】:

      猜你喜欢
      • 2011-11-08
      • 1970-01-01
      • 2011-08-16
      • 1970-01-01
      • 1970-01-01
      • 2014-08-19
      • 2021-03-11
      • 2021-09-18
      • 1970-01-01
      相关资源
      最近更新 更多