gpt4 book ai didi

ruby-on-rails-3 - Heroku mongo_mapper MONGOHQ_URL 无法被 ruby​​ uri 解析

转载 作者:可可西里 更新时间:2023-11-01 09:16:57 25 4
gpt4 key购买 nike

我已经搜索了 Internet 但没有找到合适的解决方案,所以我在这里向 SO 社区寻求帮助。

我正在将 Heroku Bamboo 上的 Rails 2 应用程序迁移到 Cedar。同时,我正在转向 Rails 3 和 ruby​​ 2.0.0(尽管我在 ruby​​ 1.9.3 中也遇到了这个错误)。

似乎 MongoMapper 从 0.8.6 开始发生了一些变化,以至于我不能再使用我们的旧初始化器了。我正在尝试使用最新的 0.13.1 版本的 mongo_mapper。

根据 https://devcenter.heroku.com/articles/mongohq ,我只需要将 config/mongo.yml 设置为:

production:
uri: <%= ENV['MONGOHQ_URL'] %>

我已经准备就绪(我还注释掉了旧的初始化代码)。但是,它因以下连接错误而失败:

Feb 05 11:18:28 my-app-name app/web.1: /app/vendor/ruby-2.0.0/lib/ruby/2.0.0/uri/generic.rb:214:in `initialize': the scheme mongodb does not accept registry part: heroku:2QMdYzo6z5nmJJsmWAWKd_205umc05tBuP2ZodGaNDZ7N5rE4ns09jhsfFBjmkQ2ls_rfTiVC0lD24Y2byDXbg@candidate.21.mongolayer.com:10499,candidate.4.mongolayer.com:10625 (or bad hostname?) (URI::InvalidURIError)

无效的 URI 是可以理解的,但这就是 Heroku 提供给我的。为了让 uri 解析器接受它,我缺少什么?

提前谢谢你。

最佳答案

答案在于 uri 中是否存在该逗号 (,)。当我删除第二个主机和逗号时,它的行为正确:-)

具体来说,我创建了一个名为 MONGOHQ_URL2 的 Heroku ENV 变量,没有第二个主机名,然后更新了我的 config/mongo.yml 以使用那个。

关于ruby-on-rails-3 - Heroku mongo_mapper MONGOHQ_URL 无法被 ruby​​ uri 解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28353036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com