Knex 迁移不会创建任何东西
Knex migrations don't create anything
我正在尝试开始使用 Knex.js,但我似乎无法进行任何迁移。当我 运行 命令 knex migrate:latest
数据库只有 knex_migrations
table.
我是不是做错了什么?
Knexfile
module.exports = {
development: {
client: 'postgresql', //Also tried just 'pg'
connection: {
host: process.env.SERVER_HOST,
user: process.env.SERVER_USER,
password: process.env.SERVER_PASSWORD,
database: 'mika_personal'
}
}
}
迁移
'use strict'
exports.up = function(knex, Promise) {
knex.schema.createTable('blog_posts', function(table) {
table.increments('id').primary()
table.string('name', 75)
.index()
.unique()
.notNullable()
table.text('content')
table.integer('views')
table.timestamps()
})
}
exports.down = function(knex, Promise) {
knex.schema.dropTable('blog_posts')
}
将 return
添加到您的 up 和 down 函数的第一行,以便 knex 可以访问 knex.schema.*
returns 的承诺,然后 knex 可以使用它来协调执行迁移。例如:
exports.down = function(knex, Promise) {
return knex.schema.dropTable('blog_posts')
}
我正在尝试开始使用 Knex.js,但我似乎无法进行任何迁移。当我 运行 命令 knex migrate:latest
数据库只有 knex_migrations
table.
我是不是做错了什么?
Knexfile
module.exports = {
development: {
client: 'postgresql', //Also tried just 'pg'
connection: {
host: process.env.SERVER_HOST,
user: process.env.SERVER_USER,
password: process.env.SERVER_PASSWORD,
database: 'mika_personal'
}
}
}
迁移
'use strict'
exports.up = function(knex, Promise) {
knex.schema.createTable('blog_posts', function(table) {
table.increments('id').primary()
table.string('name', 75)
.index()
.unique()
.notNullable()
table.text('content')
table.integer('views')
table.timestamps()
})
}
exports.down = function(knex, Promise) {
knex.schema.dropTable('blog_posts')
}
将 return
添加到您的 up 和 down 函数的第一行,以便 knex 可以访问 knex.schema.*
returns 的承诺,然后 knex 可以使用它来协调执行迁移。例如:
exports.down = function(knex, Promise) {
return knex.schema.dropTable('blog_posts')
}