【发布时间】:2010-08-20 20:14:14
【问题描述】:
我的默认 environment.rb 溢出了,我希望有一个工作方式完全相同的单独文件。我该怎么做?
【问题讨论】:
标签: ruby-on-rails environment-variables
我的默认 environment.rb 溢出了,我希望有一个工作方式完全相同的单独文件。我该怎么做?
【问题讨论】:
标签: ruby-on-rails environment-variables
您可能会在环境文件中添加一些应该在初始化程序中的内容。检查 config/initializers 目录以获取其中的一些示例。这应该能让你把事情分解,让一切更有条理。
【讨论】:
config.gem ...。任何其他不特定于环境的东西都放在初始化程序中。 ryandaigle.com/articles/2007/2/23/…
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 中执行。第三个参数将用于报告文件中的语法错误。
【讨论】: