我的一个Rails(3.1)控制器中有以下代码:
@count = Call.where(:destination => current_user.destination_id).count
@count_day = Call.where('created_at > ?', 1.days.ago).count
@count_month = Call.where('created_at > ?', 30.days.ago).count
它们都按预期工作,但我试图以某种方式将它们中的两个合并在一起,因此它显示了在过去1天内创建的调用计数,但仅适用于目标与当前用户destination_id值匹配的调用。
我试图添加:条件,但没有快乐:
@count_day = Call.where(:destination => current_user.destination_id, :condition ['created_at > ?', 1.days.ago]).count
是否可以通过这种方式添加多个条件?如果是这样,怎么样?
答案 0 :(得分:1)
试试这个:
@count_day = Call.where("destination = :destination AND created_at > :date", { :destination => current_user.destination_id, :date => 1.days.ago}).count
答案 1 :(得分:0)
在哪里创建范围和范围可以链接,所以你可以做
Call.where(:destination =>current_user.id).where("created_at > ?", 1.day.ago).count