基于rails

时间:2016-12-08 19:43:28

标签: ruby-on-rails arrays integer summarize

我想根据一个整数生成5个具有不同值的按钮。 例如,我有30,我想用10 20 30 40 50创建按钮

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 个答案:

答案 0 :(得分:1)

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

所以在你的情况下,它将是:

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

顺便说一句,这不是Rails特有的,而是具体的Ruby。 Rails是一个 web 框架,用于处理浏览器与构建于Ruby之上的Web服务器之间的交互。

如果您觉得自己不能快速使用Ruby,请尝试https://learnrubythehardway.org/book/并在Ruby中对HackerRank或ProjectEuler进行一些练习。