在Play! Framework 2.0(scala)中连接到Heroku的PostgreSQL

我花了很多時間研究如何在Play Framework(Scala)中連接到Heroku的PostgreSQL,所以我想在這裡記錄一下方法。
由於是根據文檔進行嘗試和錯誤,我無法確定這是否是正確的方法。

如果有任何错误,请指出来。

确认已安装的附加组件

heroku addons --app アプリケーションID

=== アプリケーションID Configured Add-ons
heroku-postgresql:dev  HEROKU_POSTGRESQL_BRONZE
heroku-postgresql:dev  HEROKU_POSTGRESQL_CHARCOAL

确认Heroku上安装了PostgreSQL插件。
如果未安装,请使用以下命令进行添加。

heroku addons:add heroku-postgresql --app アプリケーションID

确认数据库的URL

heroku config
DATABASE_URL:                   postgres://XXXXXXXXXXXXX
・・・

确认是否显示 DATABASE_URL

设置Procfile

请在 Procfile 中写入以下内容。

web: target/start -Dhttp.port=${PORT} -DapplyEvolutions.default=true -Ddb.default.url=${DATABASE_URL} -Ddb.default.driver=org.postgresql.Driver

在application.conf中指定数据库的URL

db.default.url="jdbc:postgresql://localhost/XXXXX"
db.default.url=${?DATABASE_URL}

如果按照上述方式编写,当环境变量DATABASE_URL被设置时,db.default.url的值将被更新。
在本地进行测试时,db.default.url将为本地URL,而在Heroku上运行时将为${DATABASE_URL}。

将代码推送到Heroku进行测试。

只需将代码推送到Heroku,就会自动部署。

当事情发生时,没有达到预期或者出现困难的情况。

通过查看日志来解决问题

heroku logs

使用psql控制台连接到位于服务器上的PostgreSQL数据库。

heroku pg:psql

只有在本地安装了psql才能执行。

参考的链接是https://devcenter.heroku.com/articles/heroku-postgresql。

广告
将在 10 秒后关闭
bannerAds