【问题标题】:Rails ignoring database.yml details about my Heroku PostgreSQL DBRails 忽略关于我的 Heroku PostgreSQL 数据库的 database.yml 详细信息
【发布时间】:2015-04-13 05:56:17
【问题描述】:

我在 Heroku 上有一个 Rails 应用程序,由于某种原因,当我部署它时它无法连接到我的生产数据库。似乎忽略了我在 database.yml 上输入的任何内容。

这个数据库不是这个特定 Heroku 应用程序的附加组件,而是另一个应用程序。但是,下面的数据库连接详细信息是正确的。

default: &default
  adapter: sqlite3
  pool: 5
  timeout: 5000

development:
  <<: *default
  database: db/development.sqlite3

test:
  <<: *default
  database: db/test.sqlite3

production:
   adapter: postgresql
   encoding: unicode
   database: asdfasdfasdf # [HIDDEN]
   pool: 5
   host: ec2-xxx-xx-xxx-xx.compute-1.amazonaws.com
   username:  asdfasdfasdf # [HIDDEN]
   port:       5432
   password:  asdfasdfasdfasdfasdfasdf # [HIDDEN]
   timeout: 5000

【问题讨论】:

标签: ruby-on-rails ruby-on-rails-3 postgresql heroku


【解决方案1】:

Heroku 忽略 database.yml 文件属性。您需要将DATABASE_URL 设置为环境值。

ENV["DATABASE_URL"]= postgres:username:password@host/db_name

另请参阅: Heroku postgresql configuration.

【讨论】:

    【解决方案2】:

    使用以下命令设置 DATABASE_URL

    heroku  config:addDATABASE_URL='postgres://asdfasdfasdf:asdfasdfasdf@ec2-xxx-xx-xxx-xx.compute-1.amazonaws.com:5432/asdfasdfasdf'
    

    【讨论】:

      猜你喜欢
      • 2013-10-10
      • 1970-01-01
      • 1970-01-01
      • 2011-07-29
      • 2017-08-01
      • 2012-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多