【发布时间】:2017-10-01 13:02:21
【问题描述】:
在我的 Rails 应用程序中,其中一个模型中有类似的东西
def self.calc
columns_to_sum = "sum(price_before + price_after) as price"
where('product.created_at >= ?', 1.month.ago.beginning_of_day).select(columns_to_sum)
end
对于某些行,我们将price_before 和或price_after 设置为nil。这并不理想,因为我想添加两列并将其命名为price。如何在不多次访问数据库的情况下实现这一目标?
【问题讨论】:
-
如果您使用的是 Postgresql,请查看postgresql.org/docs/9.5/static/functions-conditional.html
标签: ruby-on-rails ruby activerecord rails-activerecord