【发布时间】:2015-06-08 20:05:21
【问题描述】:
我正在尝试获取在传递的范围声明“where”子句期间使用的计算列,以便它可以在返回的集合中使用。我已经尝试了很多不同的方法,但都没有奏效。最终,我想要完成的是按该计数对返回的集合进行排序。到目前为止,这是我的范围:
scope :used_in_past, ->(days_ago) {
where('(SELECT count(*) as total_tasks FROM grouptask WHERE creatorstudentid = sid AND creationdate > ?) > 0', Date.today-days_ago)
}
我想“ORDER BY”total_tasks,并希望将其传递给视图。不过,每当我尝试使用该命名列时,它只会说它不存在。
【问题讨论】:
标签: sql ruby-on-rails postgresql activerecord