从postgresql函数中选择ActiveRecord连接



我正在对我的函数执行这个查询:

ActiveRecord::Base.connection.execute("SELECT * FROM organic_reports('#{@date}');")

函数返回以下属性:

name(string), project_id(int), report_id(int), created_at(date), stats(int)

我如何使用ActiveRecord来查询这些结果,就像在一个正常的Rails模型?方法如(where, find等)

您始终可以使用from来定义查询的源,然后您可以像往常一样使用ActiveRecord查询接口。

Model.from("organic_reports('#{@date}')").where('...').group('...')

为什么不为organic_reports表定义一个模型呢?

class OrganicReport < ActiveRecord::Base
end

现在它是一个可以正常查询的Rails模型:

OrganicReport.find_by(project_id: 1)
OrganicReport.where('name LIKE ?', "#{name}")

最新更新