登录 主页

在Rails中获取两个输入日期之间的所有日期(日期类型为Date)

2024-06-23 10:44AM

参考:https://stackoverflow.com/a/41462952/25407982

我想获取“开始日期”和“结束日期”这两个日期之间所有的日期,Date 对象只包含年、月、日等日期信息,不包含时间部分(时、分、秒)。

可以使用 Date.parse 这个方法:

start_date = Date.parse('date start')
end_date = Date.parse('date end')
(start..end).to_a

eg:

先测试一下这个方法是否可以正常使用:$ bundle exec rails c

Loading development environment (Rails 4.2.11.3)
irb(main):002:0> Date.parse("2024-03-21")
=> Thu, 21 Mar 2024

代码示例:

CsvRecord.all.each do |row| 

  start_date = Date.parse(row.entered_at)

  end_date = Date.parse(row.leaved_at)

  (start_date .. end_date).each do |date|

    puts date

  end

end

返回>>

登录

请登录后再发表评论。

评论列表:

目前还没有人发表评论