【发布时间】:2021-07-09 12:45:19
【问题描述】:
我在下面的代码中得到了上周的第一个日期和 7 月的最后一个日期,但我得到了 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"
对此有什么建议吗?感谢所有帮助。
【问题讨论】:
-
这是你想要的吗,
DateTime.now.beginning_of_month?我不明白你在问什么。 -
这里,apidock.com/rails/ActiveSupport/CoreExtensions/Date/…,还有其他有用的方法,beginning_of_week等,说不定你发现了什么……
-
我的工作日范围是周一到周五。 "at_beginning_of_week" 和 "at_end_of_week" 分别是一周的开始(星期一)和一周的结束(星期日),但这个日期范围应该是 7 月 1 日到 7 月 30 日。在我的代码上方,我们可以获得当前日期的前一周。如果我们在 Rails 控制台中检查,我们会得到“7 月 28 日”到“7 月 2 日”的周范围。我们根据周一到周五的范围得到这个原因。问题是,我不想得到 6 月 28 日、29 日、30 日。星期四(7 月 1 日)到星期五(7 月 2 日)可以是本月的一周。 @razvans