在模型/音乐会中,我的定义与此相同
module Chartable
def chart_position(attribute, start_query = nil)
attribute = self.class.connection.quote_column_name(attribute.to_s)
partition = partition_by(start_query || self.class.all, attribute)
self.class.from(partition, :s).select('s.id, s.position')
.find_by('s.id = ?', id).try(:position)
end
在另一个模型(movie.rb)中,我有这个
def views_chart
@views_chart ||= chart_position(:views)
end
所以@movie.views_chart
向我展示了电影在有史以来观看次数最多的电影的全局图表中的位置。
但是... 我可以添加一个时间间隔吗?例如最近30天观看次数最多的电影?