【发布时间】:2011-12-01 17:58:13
【问题描述】:
在 Ruby 中,我正在尝试编写一个使用已设置变量的行,否则默认为某个值:
myvar = # assign it to ENV['MY_VAR'], otherwise assign it to 'foobar'
我可以这样写代码:
if ENV['MY_VAR'].is_set? #whatever the function is to check if has been set
myvar = ENV['MY_VAR']
else
myvar = 'foobar'
end
但这相当冗长,我正在尝试以最简洁的方式编写它。我该怎么做?
【问题讨论】:
-
对于非 ENV 变量,在未设置时不会很好地失败,您需要使用类似
defined?( some_variable ) ? some_variable : "default value"