在
config/environments/production.rb
(以及其他环境)有:
config.eager_load = true
还有一大堆其他的
config.foobar
电话。但是“config”是从哪里来的?通常情况下,您会遇到如下情况:
SomeClass.each do | block_variable |
block_variable.some_method
end
但在神秘的“config”中,情况并非如此,它就像一个块变量,在任何地方都不会声明。打开Rails控制台时:
irb(main):001:0> config
NameError: undefined local variable or method `config' for main:Object
Did you mean? conf
from (irb):1
irb(main):002:0>
同样的结果也发生在
app.config
irb(main):002:0> app.config
NoMethodError: undefined method `config' for #<ActionDispatch::Integration::Session:0x00007fc898d02808>
from (irb):2
Ruby如何允许调用“config”?