如何在rails中定义第二个environment.rb文件?

时间:2010-08-20 20:14:14

标签: ruby-on-rails environment-variables

我的默认环境.rb溢出,我希望有一个单独的文件以完全相同的方式工作。我怎么能这样做?

2 个答案:

答案 0 :(得分:4)

您可能会在环境文件中添加应该在初始化程序中的内容。检查config / initializers目录以获取放在那里的一些示例。这应该可以让你分解并​​使一切更有条理。

答案 1 :(得分:1)

Rails实际上使用eval来加载特殊的环境文件,例如 config / environments / development.rb 。这是它使用的代码:

eval(IO.read(configuration.environment_path), binding, configuration.environment_path)

您可以像这样定义load_more_environment这样的方法:

def load_more_environment(path)
  eval(IO.read(path), binding, path)
end

eval的第一个参数只是您要加载的代码,它将在当前binding内执行。第三个参数将用于报告文件中的语法错误。