【发布时间】:2015-07-03 02:49:11
【问题描述】:
我正在尝试与 Heroku 上的辅助外部数据库建立连接(这是在 AWS 上运行的 PostgreSQL 数据库)。我正在努力寻找最简单和/或最好的方法来做到这一点。
我尝试在部署到 Heroku 期间使用 Capistrano 任务复制 database.yml 文件:
after "deploy:update_code","deploy:config_symlink"
namespace :deploy do
task :config_symlink do
run "cp #{shared_path}/shared/config/database.yml #{release_path}/config/database.yml"
end
end
我尝试通过 Heroku config vars 建立连接:
class Pgdb < ActiveRecord::Base.establish_connection(
:adapter => ENV['PG_ADAPTER'],
:database => ENV['PG_DB'],
:username => ENV['PG_USER'],
:password => ENV['PG_PW'],
:host => ENV['PG_HOST']
)
self.abstract_class = true
self.table_name = 'test'
def self.getCardInfo(card_name)
get = connection.query("SELECT * FROM test)
get
end
end
我找不到任何有意义的文档或确切地告诉我如何执行此操作。我不知道在上述尝试中我是否接近或远离。我正在寻找解决上述尝试的任何解决方案或解决此问题的任何其他解决方案。
【问题讨论】:
-
您看过docs.aws.amazon.com/opsworks/latest/userguide/… 或penflip.com/loren/blog/blob/master/postgresRDS.md - 两者都涵盖了远程连接到RDS 的database.yml 设置。如果
RAILS_ENV=production(应该是)你的database.yml应该被正确解析。 -
我的 database.yml 没有检入 git。
-
@jdesilvio 你有没有碰巧找到解决方案?
标签: ruby-on-rails ruby-on-rails-3 heroku capistrano