Ruby on rails Rails中更漂亮的日期格式?
我知道我可以用Ruby on rails Rails中更漂亮的日期格式?,ruby-on-rails,ruby,internationalization,ruby-on-rails-4,strftime,Ruby On Rails,Ruby,Internationalization,Ruby On Rails 4,Strftime,我知道我可以用strftime手动制作日期格式,但是有没有比:short,:long,:long_序数格式更简单的方法来快速制作日期?:long_序数看起来不错,但没有AM/PM,使用军事时间: 2013年9月11日14:00而不是2013年9月11日下午2:00 理想情况下,有一种:long_ordinal_prettier格式,在美国有2:00 PM机制,在世界其他地方有相当的本地日期。创建一个类似config/initializers/date\formats.rb的文件 Date::DA
strftime
手动制作日期格式,但是有没有比:short
,:long
,:long_序数
格式更简单的方法来快速制作日期?:long_序数
看起来不错,但没有AM/PM,使用军事时间:
2013年9月11日14:00
而不是2013年9月11日下午2:00
理想情况下,有一种
:long_ordinal_prettier
格式,在美国有2:00 PM
机制,在世界其他地方有相当的本地日期。创建一个类似config/initializers/date\formats.rb的文件
Date::DATE_FORMATS.merge!(
long_date: '%a, %B %e, %Y %l:%M %p',
short: '%A, %B %e, %Y',
hyphen: "%Y-%m-%d",
long_ordinal_prettier: "....."
)
你可以这样使用它们
some_model.created_at.to_formatted_s(:long_ordinal_prettier)
为什么使用strftime
很难使用?将格式指定给常量或YAML文件,您就完成了。@theTinMan-好的,一个问题是我希望日期格式也非常国际化。此外,我还想知道如何使DateTime
s更具可读性,这对我的Rails有所启发。我很惊讶没有一个明显的内置Rails解决方案。如果没有,这听起来像是一个帮助Rails社区的机会。Rails通过strftime
支持数据/时间表示的国际标准(ISO)和*nix通用标准,这些标准在每种编程语言中都可以通过正常的sprintf
格式说明符获得。我如何获得序号日期<代码>%e给出了一个月中的哪一天,但没有“th”、“st”、“nd”等后缀。Ruby不支持您在本机上查找的内容。我将使用序号创建自定义格式作为练习,使用。