我们的Rails 3应用程序有一个配置YAML文件,每个Rails环境的文件位置都是这样的:
Production:
file_path: "#{Rails.root}/tmp/foobar"
Test:
file_path: "#{Rails.root}/tmp/test"
Run Code Online (Sandbox Code Playgroud)
此"file_path"目录会根据部署应用程序的目标计算机而更改.所以我们希望我们可以将这个模板字符串与替换的Rails.root var一起使用.但是在执行期间,当我们从配置文件加载并使用此字符串时,它似乎不会替换#{Rails.root}的实际Rails.root值.所以我们必须使用gsub.这感觉相当尴尬,我希望有一种不同的方式在我们的配置YAML文件中指定它,所以它在运行时自动进行替换.是的,有几种替代方法可以解决这个问题,但一般来说我的问题是如何从YAML配置文件中使用这样的Rails变量.