【发布时间】:2010-10-29 00:07:39
【问题描述】:
如何在 Ruby 中完成这个简单的任务?
我有一些简单的配置文件
=== config.rb
config = { 'var' => 'val' }
我想从main.rb 文件中定义的某个方法加载配置文件,以便config.rb 中的局部变量成为该方法的局部变量。
像这样的:
=== main.rb
Class App
def loader
load('config.rb') # or smth like that
p config['var'] # => "val"
end
end
我知道我可以在 config.rb 中使用全局变量,然后在完成后取消定义它们,但我希望有一个 ruby 方式)
【问题讨论】:
-
你可以用 eval 来做,但这不是一个好主意(在任何语言中)。
-
有沙箱可以让你在控制器环境中执行代码,所以我会投票来弥补你的反对
标签: ruby variables scope load local