Динамически устанавливаемые локальные переменные в Ruby [дубликат]

На этот вопрос уже есть ответ здесь:

Меня интересует динамическая установка локальных переменных в Ruby. Не создавать методы, константы или переменные экземпляра.

Примерно так:

args[:a] = 1
args.each_pair do |k,v|
  Object.make_instance_var k,v
end
puts a
> 1

Мне нужны локальные переменные специально, потому что рассматриваемый метод живет в модели, и я не хочу загрязнять глобальное или объектное пространство.

25
задан Andrew Marshall 6 May 2012 в 17:58
поделиться