📅  最后修改于: 2023-12-03 15:01:07.966000             🧑  作者: Mango
当你的Node.js应用程序需要在Heroku上部署时,你可能会使用Knex.js进行数据库迁移和查询。在本篇文章中,我们将介绍如何在Heroku上安装和运行Knex迁移。
在开始之前,你应该熟悉以下技术:
以下是在Heroku上运行Knex迁移的步骤:
在Heroku CLI官网上下载并安装Heroku CLI,然后用你的账号登录。
# 安装
$ curl https://cli-assets.heroku.com/install.sh | sh
# 登录
$ heroku login
在你的Node.js项目的根目录下,使用npm安装Knex和相关驱动程序。
$ npm install knex pg
在你的项目中,使用.env文件或者Heroku Config Vars设置你的数据库连接参数。例如:
DATABASE_URL=postgres://user:password@host:port/database
在你的项目的根目录下,创建一个名为Knexfile.js的新文件,并添加以下代码:
module.exports = {
development: {
client: 'pg',
connection: process.env.DATABASE_URL
},
production: {
client: 'pg',
connection: process.env.DATABASE_URL
}
};
在项目中创建新的迁移文件:
$ npx knex migrate:make migration_name
在迁移文件中,使用Knex.js提供的API编写你的迁移逻辑。例如:
exports.up = function(knex, Promise) {
return knex.schema.createTable('users', function(table) {
table.increments('id');
table.string('name');
table.string('email').unique();
table.timestamps();
});
};
exports.down = function(knex, Promise) {
return knex.schema.dropTable('users');
};
使用以下命令来运行你的迁移:
$ npx knex migrate:latest
这将连接到你配置的数据库并运行所有未运行过的迁移文件。
在本文中,我们介绍了如何在Heroku上使用Knex.js进行数据库迁移。通过遵循这些步骤,你可以轻松地在Heroku上运行Knex迁移,确保你的应用程序具有正确的数据库结构。