【发布时间】:2017-10-15 14:08:55
【问题描述】:
例如 总和 = 0
2.times do |v1, v2, v3 , v4|
v1 = FactoryGirl...
v2 = FactoryGirl...
..
v4 = ...
sum =
end
现在总而言之,我想添加一个属性的值,即块中的每个对象都有它,例如
sum = v1[:nr_sales] + v2[:nr_sales] +...
有没有办法一次做到这一点(对块的所有参数应用方法)?
【问题讨论】:
-
您的示例将运行,但在 Ruby 上下文中没有多大意义。块的参数(您的
v1到v4)从块外部接收值,类似于调用方法。将这些变量名称设置为块内完全不相关的东西没有任何意义。特别是对于times方法,v1第一次通过代码以0开头,第二次以1开头;其余的两次都是nil。
标签: ruby-on-rails ruby ruby-block