0
我有两个模型投票和选项,每个都有“total”和“quantity”列。 (投票的has_many:选项)总结不同模型中的数字
我要开始实施这样的:
Option.quantities.each {|数量|总+ =量}
Vote.total =总
如何实现??
我有两个模型投票和选项,每个都有“total”和“quantity”列。 (投票的has_many:选项)总结不同模型中的数字
我要开始实施这样的:
Option.quantities.each {|数量|总+ =量}
Vote.total =总
如何实现??
您是否要求提供替代实施?还是为了别的?你可以做同样的事情Enumerable::inject
,例如:
class Vote < ActiveRecord::Base
has_many :options
def calculate_total
total = self.options.inject(0) { |sum, vote| sum += vote.quantity }
save!
end
end
这样,在总投票计算并保存每个calculate_total
被调用时。
太棒了!我将它改为“self.total = self.options .....”,它的工作原理!谢谢! – Jack