我的默认环境.rb溢出,我希望有一个单独的文件以完全相同的方式工作。我怎么能这样做?
答案 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
内执行。第三个参数将用于报告文件中的语法错误。