在Ruby中只获取本月之间的前一周



我在下面的代码中得到了上周的第一个日期和七月的最后一个日期,但我得到了6月28日作为上周的第一天。我想从7月1日到7月2日这一周开始。我再也回不到上个月了。

每个工作日的范围是周一到周五。

(Date.today - Date.today.wday - 6).strftime('%d %b') => "28 Jun" 
(Date.today - Date.today.wday - 2).strftime('%d %b') => "02 Jul"

对此有什么建议吗?感谢所有的帮助。

我不确定是否有一行代码可以解决这个问题。但以下是我对解决上述逻辑的看法

def previous_week_in_current_month(selected_date)
previous_week_date = selected_date - 1.week
(previous_week_date.month == selected_date.month) ? previous_week_date : selected_date
end

previous_week_in_current_month返回当月current_date的前一周,如果提供的日期是第一周,则返回当前日期。如果你愿意的话,也许你可以把它变成零。

相关内容

  • 没有找到相关文章

最新更新