Ruby 时间与日期
require 'rails' 表示在rails环境下使用, 可以在irb下进行操作。需要时通过 require 'rails'引入
在项目中直接运行 Rails c 就行了。
获取时间戳:
Time.now.to_i
时间戳转时间:
Time.at 1583581066
字符串转时间:
Time.parse('2020-3-7 19:30:00')
# 也可如下这样:
"2020-3-7 19:30:00".to_time
时间转指定的字符串格式:
Time.now.strftime("%Y-%m-%d %H:%M")
获取日期:
Date.today
获取一个星期后的日期:
Date.today + 7
获取一年后的日期:
Date.today >> 12
获取一年前的日期:
Date.today << 12
如果是从数据库中取出来的数据,可能是时间类,但是又需要转换日期的话,可以如下方法:
year = current_user.created_at.year
month = current_user.created_at.month
day = current_user.created_at.day
# 相当于字符串转日期
date = Date.new(year, month, day).strftime("%Y年%m月%d日")
天数递减:
# 向前数5天
date = Date.today
date.downto ( date - 5) { |date| puts date }
天数递增:
# 向前数5天
date = Date.today
date.upto ( date + 5) { |date| puts date }