use*_*726 10 migration heroku node.js sequelize.js
有人可以给我一些关于nodejs的sequelize迁移的完整示例,因为实际的文档本身并没有提供完成它的完成示例.
或者可以给出一些可以使用的其他模块的完整示例以及如何在heroku中使用的最佳实践?
谢谢
小智 29
通过运行在本地初始化sequelize时:
sequelize -i
Run Code Online (Sandbox Code Playgroud)
创建config文件夹中的迁移文件夹,配置文件夹和config.json.该json文件是您设置应用程序环境的位置.以下是config.json文件的示例.
{
"development": {
"username": "postgres",
"password": "password",
"database": "dbname",
"host": "100.0.0.0",
"dialect":"postgres",
"protocol":"postgres",
"port":"xxxx"
},
"staging": {
"username": "dbusername",
"password": "dbpassword",
"database": "db",
"host": "host",
"dialect":"postgres",
"protocol":"postgres",
"port":"xxxx"
},
"production": {
"username": "dbusername",
"password": "dbpassword",
"database": "db",
"host": "dbhost",
"dialect":"postgres",
"protocol":"postgres",
"port":"xxxx"
}
}
Run Code Online (Sandbox Code Playgroud)
生产对象是您设置heroku生产应用程序数据库变量的位置.您可以通过在命令行中运行以下命令来访问它们:
heroku config --app production-app-name
Run Code Online (Sandbox Code Playgroud)
所有变量都将在您设置的database_url config var中.
当您准备好运行迁移时,您在命令行中运行的所有内容都是:
heroku run sequelize db:migrate --env production -m --app production-app-name.
Run Code Online (Sandbox Code Playgroud)
--env将是您要迁移的config.json中的任何数据库对象.
而不是将密码嵌入文件中,使用这个方便的sequelize功能:
"production": {
"use_env_variable": "DATABASE_URL"
}
Run Code Online (Sandbox Code Playgroud)
您可以使用 Procfile 并将其放在顶部。
release: npx sequelize-cli db:migrate
Run Code Online (Sandbox Code Playgroud)
然后,您将需要一个 .sequelizerc 文件来定义迁移的位置。
对于配置,您可以将其用于 ssl。
production: {
use_env_variable: 'DATABASE_URL',
dialect: 'postgres',
protocol: 'postgres',
ssl: true,
dialectOptions: {
ssl: {
require: true,
rejectUnauthorized: false,
},
},
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8010 次 |
| 最近记录: |