Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何检测我的ruby应用程序是否在heroku上运行而没有config:add?_Ruby_Heroku_Bundler - Fatal编程技术网

如何检测我的ruby应用程序是否在heroku上运行而没有config:add?

如何检测我的ruby应用程序是否在heroku上运行而没有config:add?,ruby,heroku,bundler,Ruby,Heroku,Bundler,在Gemfile中,我想编写伪代码: ruby: '1.9.3' if ENV['HEROKU'] 因为我想在另一个平台上运行我的应用程序,比如jruby,ruby2.0.0if!希罗库。我认为这是特定于heroku的变量,heroku\u POSTGRESQL\u VIOLET\u URL ruby: '1.9.3' if ENV['HEROKU_POSTGRESQL_VIOLET_URL'] 还有什么更好的方法呢 相关的: 哦,HEROKU\u POSTGRESQL\uu{VIOLET

在Gemfile中,我想编写伪代码:

ruby: '1.9.3' if ENV['HEROKU']
因为我想在另一个平台上运行我的应用程序,比如jruby,ruby2.0.0if!希罗库。我认为这是特定于heroku的变量,heroku\u POSTGRESQL\u VIOLET\u URL

ruby: '1.9.3' if ENV['HEROKU_POSTGRESQL_VIOLET_URL']
还有什么更好的方法呢

相关的:


哦,HEROKU\u POSTGRESQL\uu{VIOLET,Silver,RED,…}\uURL,这是分布式的。

如果您不想添加另一个环境变量,您可以将Rails环境从“production”更改为“HEROKU”(但无论如何都应该通过更改环境变量
Rails\u ENV
来完成)

因此,本地Rails环境将是开发/测试/生产环境,但在Heroku上将是“Heroku”,您可以检查:

Rails.env.heroku?

希望有帮助。

如果您不想添加另一个环境变量,可以将Rails环境从“production”更改为“heroku”(但无论如何都应该通过更改环境变量
Rails\u ENV
来完成)

因此,本地Rails环境将是开发/测试/生产环境,但在Heroku上将是“Heroku”,您可以检查:

Rails.env.heroku?

希望有帮助。

我觉得
如果ENV.keys.any?{| var_name | var_name.match(/heroku/i)}
将是一种相对合理的方法。

在我看来,
如果ENV.keys.any?{| var_name | var_name.match(/heroku/i)}
将是一个相对合理的方法。

那么链接的问题有什么问题?您想要开发/登台/生产奇偶校验。使用不同版本的ruby不是奇偶校验。你为什么要这么做?@phoet我想把这个应用程序放到rubygems上,所以我想手动减少“heroku配置:add heroku=1”。我会忘记的。我更喜欢这样:“!ENV['TRAVIS']”@hgmnz是的,使用五个不同的版本,但在特定于heroku的版本中,我想要一个ruby版本,所以链接的问题有什么问题?您想要开发/登台/生产奇偶校验。使用不同版本的ruby不是奇偶校验。你为什么要这么做?@phoet我想把这个应用程序放到rubygems上,所以我想手动减少“heroku配置:add heroku=1”。我会忘记的。我更喜欢这样:“!ENV['TRAVIS']”@hgmnz是的,使用五个不同的版本,但对于heroku特定的,我想要一个ruby版本好!谢谢但我觉得这是暂时的解决办法;(2015年不再有任何密钥匹配/heroku/i,但有一个匹配/dyno/i(如果上面链接的更好的解决方案确实不适用)。很好!谢谢!但我觉得这是临时解决方案;(2015年不再有任何密钥匹配/heroku/i,但有一个匹配/dyno/i)(如果上面链接的更好的解决方案确实不适用)。这在bundler阶段不起作用,因为那里没有定义Rails。这在bundler阶段不起作用,因为那里没有定义Rails。