我已将我的应用程序部署到Heroku,并且希望Heroku连接到外部PostgreSQL数据库。
这是我的Rails数据库。yml
production:
url: "postgres://postgres:@127.0.0.1:5432/postgres"
adapter: PostgreSQL
此数据库在开发环境中运行良好。但是在Heroku上时,出现连接被拒绝的错误。这里可能是什么问题?
答案 0 :(得分:1)
Heroku会忽略您的database.yml生产设置并使用它自己的。 Heroku使用ENV var DATABASE_URL创建连接。我认为,如果您使用与用于连接heroku pg的结构相同的结构,就可以实现您的目标。
在heroku应用设置中添加ENV变量:
DATABASE_URL=postgres://username:password@your-host/db_name
在此处添加ENV变量:https://dashboard.heroku.com/apps/your-app-name/settings
点击“显示配置变量”,然后添加DATABASE_URL
或通过CLI:
heroku config:set DATABASE_URL=postgres://username:password@your-host/db_name --app your-app-name
确保已安装pg
宝石!