Knex 迁移不创建表
Knex migration does not create tables
我有一些 Knex 迁移脚本,如下所示:
'use strict';
exports.up = function (knex) {
return knex.schema
.hasTable('user')
.then(function (exists) {
if (!exists) {
knex
.schema
.createTable('user', function (table) {
table.increments('id').primary();
table.string('firstName');
table.string('lastName');
table.string('email');
table.string('password');
table.string('username');
})
.then(console.log('created user table'));
}
});
};
我第一次 运行 这个脚本时,它创建了一个 table,这很棒,但后来我注意到 table 格式不正确(我传递了一个错误的参数.) 所以我从我的数据库中手动删除了创建的 table,以及 knex_migrations 和 knex_migrations_lock tables,并重新 运行 迁移命令.现在,它告诉我所有迁移都有 运行,但我仍然没有看到 table。是什么赋予了?是否有某个配置隐藏在我需要删除的地方?
添加"return".
'use strict';
exports.up = function (knex) {
return knex.schema
.hasTable('user')
.then(function (exists) {
if (!exists) {
return knex // **** udpate
.schema
.createTable('user', function (table) {
table.increments('id').primary();
table.string('firstName');
table.string('lastName');
table.string('email');
table.string('password');
table.string('username');
})
.then(console.log('created user table'));
}
});
};
我有一些 Knex 迁移脚本,如下所示:
'use strict';
exports.up = function (knex) {
return knex.schema
.hasTable('user')
.then(function (exists) {
if (!exists) {
knex
.schema
.createTable('user', function (table) {
table.increments('id').primary();
table.string('firstName');
table.string('lastName');
table.string('email');
table.string('password');
table.string('username');
})
.then(console.log('created user table'));
}
});
};
我第一次 运行 这个脚本时,它创建了一个 table,这很棒,但后来我注意到 table 格式不正确(我传递了一个错误的参数.) 所以我从我的数据库中手动删除了创建的 table,以及 knex_migrations 和 knex_migrations_lock tables,并重新 运行 迁移命令.现在,它告诉我所有迁移都有 运行,但我仍然没有看到 table。是什么赋予了?是否有某个配置隐藏在我需要删除的地方?
添加"return".
'use strict';
exports.up = function (knex) {
return knex.schema
.hasTable('user')
.then(function (exists) {
if (!exists) {
return knex // **** udpate
.schema
.createTable('user', function (table) {
table.increments('id').primary();
table.string('firstName');
table.string('lastName');
table.string('email');
table.string('password');
table.string('username');
})
.then(console.log('created user table'));
}
});
};