有条件返回属性我有,我想在页面上显示三个属性:length
,height
和width
。红宝石
如果对象上的第四个属性(variable_dimensions
)设置为true(因此无效输入其他属性的数据),我想返回一个字符串,指出“Dimensions variable”。如果width
是零,我想回到length
X height
。我想回到全length
X height
X width
否则。
我尝试这是一个帮手。
module ItemsHelper
def dimensions_available(length, height, width)
if @item.variable_dimensions == true
return "Dimensions variable"
elseif width.nil?
dimensions = length, height
return dimensions
else
dimensions = length, height, width
return dimensions
end
end
end
这适用于dimensions_variable
设置为true的情况。它按照我想要的尺寸可变的对象进行。在其它两种情况它打印到页面作为阵列看起来像[60.3,35.4,零]当width
为零,和[39,45.3,30.4]否则。如何删除阵列样式,使其看起来像10厘米x 30厘米x 48厘米?我以前尝试过使用字符串插值,但被告知它是反模式。
看着你[前一个问题(https://stackoverflow.com/questions/44273038/check-if-variables-are-null-and-if-not-print)明明是你误解了tadman试图告诉你。字符串插值不是反模式。具体建设'“#{X}”'(在字符串中包含什么比一个'#{...}'插值表达式等)是一个反模式,因为你不插'x' *有*的东西 - 它相当于'x.to_s'。 '“#{x} cm x#{y} cm x#{z} cm”'不*是反模式。 –