数组上的最大运算符

时间:2013-09-29 18:56:52

标签: ruby ruby-on-rails-3.2

这是一个语法问题。可以通过

提取总和
@cart.quotes.sum("weight")

但这不适用于max

@cart.quotes.max("weight")

在另一种语法模式

@cart.quotes.weight.max

为关系生成“未定义的方法”权重。我无法理解运算符的适用性(或非),因为对于我可以操作的变量,关系错误如何出现... Rails 3.2.13和Ruby 1.9

1 个答案:

答案 0 :(得分:1)

要回答第一个问题,请尝试:

@cart.quotes.maximum("weight")

关于运算符的适用性(或非):@cart.quotes返回一个ActiveRecord关系,该关系没有任何名为weight的方法或属性或表quotes具有的任何其他属性。

然而,它确实响应了summaximum等运算符对提供的属性执行该操作并返回最终计算。

有关ActiveRecord计算方法,请参阅docs