0
我有以下代码并希望将请求转换为mysql查询。现在我使用数据上的手动.select(数组方法)实现期望的结果。这应该可能与一个单一的查询(纠正我,如果我错了)。将此代码转换为活动记录/ sql查询
当前代码:
def self.active_companies(zip_code = nil)
if !zip_code
query = Company.locatable.not_deleted
else
query = Company.locatable.not_deleted.where("zip_code = ?", zip_code)
end
query.select do |company|
company.company_active?
end
end
# Check if the company can be considered as active
def company_active?(min_orders = 5, last_order_days_ago = 15)
if orders.count >= min_orders &&
orders.last.created_at >= last_order_days_ago.days.ago &&
active
return true
else
return false
end
end
说明: 我想找出哪些公司是活跃的。我们有一个公司模型和一个订单模型。
数据: 公司:
- 活性
- 的订单(订单相关联)
订单:
- created_at