&引用;无法翻译主机名“;使用ruby脚本连接到数据库时

&引用;无法翻译主机名“;使用ruby脚本连接到数据库时,ruby,heroku,Ruby,Heroku,我正在尝试从ruby脚本访问数据库。目前我有以下代码: config = YAML.load(ERB.new(File.read(File.join("config","database.yml"))).result) environment = ENV["RAILS_ENV"] || ENV["RACK_ENV"] || "development" return PGconn.connect( :hostaddr=>config[environment]["host"], :

我正在尝试从ruby脚本访问数据库。目前我有以下代码:

  config = YAML.load(ERB.new(File.read(File.join("config","database.yml"))).result)
  environment = ENV["RAILS_ENV"] || ENV["RACK_ENV"] || "development"
  return PGconn.connect( :hostaddr=>config[environment]["host"], :port=>config[environment]["port"], :dbname=>config[environment]["database"], :user=>config[environment]["username"], :password=>config[environment]["password"]);
My database.yml如下所示:

发展: 适配器:postgresql 主机:本地主机 用户名:usrname 密码:passwor 数据库:dbname 港口:5432

然后我的剧本抱怨说:

/app/scripts/crawler.rb:54:“初始化”中:无法转换主机 名称“localhost”到地址:名称或 服务未知

我将“localhost”改为127.0.0.1,它成功了

当我上传到Heroku时,我得到以下信息:

/app/scripts/crawler.rb:54:“初始化”中:无法转换主机 名称“ec2-184-72-231-67.compute-1.amazonaws.com”至地址:姓名或 服务未知

我是否需要导入一些gem以便将主机名转换为IP?我已经搜索过了,但是没有太多的信息,我唯一发现的是一个类似但不相同的问题:,但我不知道答案是否相同,因为我在localhost上遇到了相同的问题,而且他的问题是偶尔出现的,而我的问题不是


谢谢

这是一个代码问题,应该是:host而不是:hostaddr

您好,您能帮我连接heroku postres和我的本地机器postgres吗?