将变量绑定到ActiveRecord选择

时间:2016-02-06 18:00:14

标签: ruby-on-rails activerecord

在ActiveRecord中,如何在select中绑定预准备的语句变量?例如:

Group.select('(EXTRACT(epoch FROM created_at) / $1)::int AS interval')

$ 1参数是根据用户输入计算的,所以我很想连接字符串,但我觉得它并不理想。提前谢谢!

1 个答案:

答案 0 :(得分:1)

您可以通过四处走动来实现这一目标,只有您必须在method中定义model才能根据需要进行计算:

def self.interval_divided_by dividend
  Group.select('(EXTRACT(epoch FROM created_at))::int AS interval').interval / dividend
end

然后使用它:

Group.interval_divided_by 4