ruby-on-rails – 为什么在rails 3.1范围内使用sum会导致错误?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 为什么在rails 3.1范围内使用sum会导致错误?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这个范围:
scope :total_quantity,sum('quantity')

当我跑:

MyModel.total_quantity

我收到此错误

NoMethodError: undefined method `default_scoped?' for 4:Fixnum

直接运行sum方法有效

MyModel.sum('quantity') # 4

我在default_scoped上找不到任何文档?方法,或者为什么在这里调用它.你知道是否有办法解决这个问题?

解决方法

试试方法而不是范围.它像魅力一样工作我也遇到了同样的问题,但是当我将范围改为方法时,它的工作正常.下面是工作和测试代码:)
def self.total_quantity
 sum('quantity')
end

让我知道它是否有效!谢谢

猜你在找的Ruby相关文章