2015-04-03 54 views
0

是否有可能将此行与像|| =或其他的红宝石操作符一样分解? :因式分解红宝石条件

if sheet.rows[start[:y]] then row = sheet.rows[start[:y]] else row = sheet.add_row [] end 

回答

2

您可以使用三元运算符:

row = sheet.rows[start[:y]] ? sheet.rows[start[:y]] : sheet.add_row([]) 

或者:

row = sheet.rows[start[:y]] 
row = sheet.add_row [] if !row 

或(感谢@tight):

row = sheet.rows[start[:y]] || sheet.add_row([]) 
+0

三元运算符扔我一个错误,我没有登录我的公司环境,所以我不能使用它 – 2015-04-03 10:57:49

+1

好吧,其实我只需要添加括号我的add_row条件。谢谢 ! – 2015-04-03 10:59:28

+0

是的。我也会编辑我的答案,所以对其他人有帮助 – shivam 2015-04-03 11:00:25