Knex - 如何在不使用迁移的情况下创建表(和更改架构)

时间:2016-05-09 14:04:31

标签: knex.js

我尝试使用knex创建表/列...但不使用迁移。但是这段代码......

var miDb =require('knex')({client: 'pg', connection: myConexStr});
miDb.schema.createTable('xample', function(table) {
    table.increments();
    table.string('nombre');
});

只有在"迁移"

内执行时才会按预期运行

当它在其他地方执行时(即在应用启动期间),它不会创建表...

永远不会到达table.increments()行。

似乎"架构方法"仅适用于迁移。

或许我忘了要做的事......

TIA

1 个答案:

答案 0 :(得分:0)

正如brian_miller在IRC上说的那样,我最好还是承诺看看是否有错误。 没有错误发生,但是当我从承诺中调用.then / .catch时代码按预期运行。

即。有效:

var miDb =require('knex')({client: 'pg', connection: myConexStr});
miDb.schema.createTable('xample', function(table) {
    table.increments();
    table.string('nombre');
})
.then(function(obj) {console.log(obj)})
.catch(function(err) {console.log(err)});

桌子已经创建了。