如何输出以下格式:月 - 年?

时间:2011-11-23 12:13:59

标签: ruby ruby-on-rails-3

今天的月份是十一月(11)。使用1.years.ago.to_date..Date.today,我该如何输出:

11 - 2010,12 - 2010,01 - 2011,02 - 2011,03 - 2011等

4 个答案:

答案 0 :(得分:3)

strftime 

使用函数进行ruby中的所有日期修改

参阅此DOC

答案 1 :(得分:1)

这可能是一种更有效的方法,但这会为您提供所需的输出:

require "active_support/core_ext/integer/time"

((1.year.ago.to_date)..(Date.today)).map { |d| d.strftime("%m-%Y") }.uniq!

答案 2 :(得分:0)

对于使用strtotime()函数的打印日期。

//今天使用以下代码打印日期

echo date('m/d/Y',strtotime("today"));

//一年前使用以下代码打印日期

echo date('m.d.Y',strtotime("-1 years"));

//从今天起的今年日期使用以下代码

echo date('m.d.Y',strtotime("1 years"));

答案 3 :(得分:0)

您可以在区域设置中添加新格式。

#/config/locales/en.yml
en:
  date:
    formats:
      month_year: "%m - %Y"

并将其与I18n.l(your_date, :format => :month_year)

一起使用

如果您想稍后更改格式,这将有所帮助,您将在一个独特的点上进行更改。