0

这是一个语法问题。可以通过以下方式提取总和

@cart.quotes.sum("weight")

但这不适用于 max

@cart.quotes.max("weight")

在另一种语法模式下

@cart.quotes.weight.max

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

4

1 回答 1

1

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

@cart.quotes.maximum("weight")

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

但是,它确实响应操作符sum,并且maximum对提供的属性执行该操作并返回最终计算。

有关 ActiveRecord 计算方法,请参阅文档

于 2013-09-29T19:03:59.327 回答