首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >虚荣心、Rails 3和Heroku

虚荣心、Rails 3和Heroku
EN

Stack Overflow用户
提问于 2011-06-12 12:42:32
回答 3查看 1.2K关注 0票数 7

我正试图让Vanity和Heroku和我的Rails 3应用玩得很好。目前,在本地使用Pow和本地Redis服务器都工作得很好,但当我使用RedisToGo附加组件推送到Heroku时,似乎没有任何东西让服务器运行,我只是得到了错误:getaddrinfo: Name or service not known

下面是我的config/vanity.yml文件:

代码语言:javascript
复制
staging:
  adapter: redis
  host: <%= ENV["REDISTOGO_URL"] %> 

和我的config/initializers/redis.rb:

代码语言:javascript
复制
uri = URI.parse(ENV["REDISTOGO_URL"])
REDIS = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password)

我还尝试使用实际的redis://<actualusername>:actualpassword@actualserver.com:9274,它给出了相同的错误。我也尝试过使用和不使用redis://

有没有人让Vanity与Heroku和Rails 3一起工作?我是不是漏掉了什么非常明显的东西?到目前为止,我的Google-fu让我失望了。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-12 13:11:11

是啊,这是件很愚蠢的事,好吧。您使用的是connection,而不是host

代码语言:javascript
复制
staging:
  adapter: redis
  connection: <%= ENV["REDISTOGO_URL"] %> 

希望这对某些人有帮助,因为我几乎把我的电脑打成了纸浆。

票数 9
EN

Stack Overflow用户

发布于 2011-06-28 23:35:55

如果你在Heroku上使用Postgres,你需要做一些不同的事情。这是我的技巧(config/vanity.yml):

代码语言:javascript
复制
production:
  adapter: active_record
  active_record_adapter: postgresql

  <% username, password, host, database = ENV['DATABASE_URL'].scan(%r{//(.*):(.*)@(.*)/(.*)}).first %>
  host:     <%= host %>
  username: <%= username %>
  password: <%= password %>
  database: <%= database %>

你必须强迫Vanity不使用Redis适配器(如果你问我,这是一个bug )。将此代码放入初始化器:

代码语言:javascript
复制
Vanity.playground.establish_connection(Rails.env.to_sym)
票数 4
EN

Stack Overflow用户

发布于 2012-02-23 07:54:09

最后一个注意事项:如果您在Heroku上使用ActiveRecord & Postgres,并且您不在共享数据库上,则连接字符串应为:

代码语言:javascript
复制
username, password, host, port, database = ENV['DATABASE_URL'].scan(%r{//(.*):(.*)@(.*):(.*)/(.*)}).first
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6320179

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档