如何使用Capistrano的一个Rails环境变量部署脚本?

如果我有一个不断在我的Rails的environment.rb,例如...

SOME_CONSTANT = 3

是否有可能访问此我Capistrano的deploy.rb不知何故? 它似乎很简单,但我想不出如何。

--------------解决方案-------------

你应该通过ENV []哈希访问它(这是一个Ruby的东西),这是使用的TERM环境变量的例子。

puts "Your Terminal is #{ENV['TERM']}"

如果你需要一个红宝石不变,从您的Rails环境,你应该加载它:

require 'config/environment'

要注意的是这将加载整个应用程序的环境中,你应该考虑使用类似的AppConfig,或SimpleConfig(此处插入其他工具)来存储配置,那么你只需要加载的工具,它处理你的配置文件。

这结束了工作:

创建文件config/initializers/my_constant.rb

把我常在那里(导轨自动加载的文件有这样我就可以使用常量在我的应用程序)

然后deploy.rb加load 'config/initializers/my_constant'因此它可以被用来那里。

为什么不能在LIB文件中定义这些常量/,然后要求在这两个你Rails应用程序的文件和你的Capfile?

由于价值不仅使用Rails应用程序,我可能会存储在一个语言无关的格式(YAML,JSON,INI,XML),它可以通过不同的工具可以很容易地分析,而不必担心可能的副作用,这样的配置信息。

分类:Ruby on Rails的 时间:2015-03-15 人气:4
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.499 (s). 10 q(s)