如何将变量i
放在参数名称中?
for i in 1..4
if !params[:option#{i}].empty?
@option#{i} = true
end
end
尝试制作:if !params[:option1].empty?
和@option1 = true
我尝试使用{{i}}
\i
#{i}
正如@Cary指出的那样,看看:
也很有用params = { :option1=>[], :option2=>[2,3], 'cat'=>'9lives', :option3=>[4] }
答案 0 :(得分:4)
您可以这样做:
for i in 1..4
if !params["option#{i}".to_sym].empty?
instance_variable_set("@option#{i}", true)
end
end
希望它有所帮助!
答案 1 :(得分:1)
您可以尝试:
!params["option#{i}".to_sym].empty?
这将首先替换字符串中 i 的值,然后将整个字符串转换为符号(使用to_sym
)
完整代码
for i in 1..4
if !params["option#{i}".to_sym].empty?
end
end