2016-12-08 33 views
0

我想生成5个按钮,其中基于一个整数的值不同。 比如我有30,我想用10 20 30 40 50根据rails中的数字生成的整数数组

value = 30 
int1 = value - 20 
int2 = value - 10 
int3 = value 
int4 = value + 10 
int5 = value + 20 

buttoncode = "" 
%w{int1 int2 int3 int4 int5}.each do |minutes| 
    buttoncode += 'buttoncode' 
end 

我可以做一个非常糟糕的方式创建按钮,但它可以做一个聪明的解决办法,我猜。 是否有可能做出类似的事情?

%w{sum(max-20) sum(max-10) max sum(max+10) sum(max+20)}.each do |minutes| 

end 

回答

1

Ruby: How to iterate over a range, but in set increments?

所以你的情况这将是:

(min..max).step(10) do |n| 
    n += 'buttoncode' 
end 

顺便说一句,这是不是真的Rails相关,但具体的红宝石。 Rails是一个web框架,它处理浏览器和构建在Ruby之上的Web服务器之间的交互。

如果你觉得你不适应Ruby的速度,试试https://learnrubythehardway.org/book/并在Ruby中的HackerRank或ProjectEuler上做一些练习。

+0

谢谢,我还是个初学者:)我会试试看。 –

+1

@RickySpanish nP,ProjectEuler确实帮助我学习Ruby,因此我会将它推荐给任何想要练习新编程语言基础知识的人。 – Mistlight