即将到来的3天从今天b/w两个日期轨道目前它只计算今天


def self.leave_day 
self.where("? BETWEEN start_date AND end_date", Date.today).where(status: "Approved").count
end

但我想计算从今天到接下来的3天。现在是计算两个日期,如果给定日期范围(Date.today+1(,则状态为今天。。(日期:今天+3.天(不接受

什么是不接受范围?U可以用一个范围来完成,并将start_date设置为日期的开始,将end_date设置为一天的结束。

def self.leave_day 
self.where(start_date: (Date.today.beginning_of_day)..((Date.today + 3.days).end_of_day), status: 'Approved').count
end

可以在where上使用多个参数。

我认为应该是这样的:

def self.leave_day 
self.where("start_date >= ? AND end_date <= ?", Date.today, Date.today + 3.days).where(status: "Approved").count
end

来源:https://api.rubyonrails.org/classes/ActiveRecord/QueryMethods.html#method-i-where

最新更新