我在environment.rb中将默认语言环境设置为de(德语)。我还看到了德语的所有错误信息,所以服务器会选择语言环境。但当我尝试使用strftime打印date时,如下所示:
environment.rb
de
strftime
some_date.strftime('%B, %y')
它以英语(January, 11)打印,而不是预期的德语(Januar, 11)。如何根据默认区域设置打印日期?
January, 11
Januar, 11
mkh04yzy1#
使用l(localize的别名)方法代替原始strftime,如下所示:
l
localize
l(date, format: '%B %d, in the year %Y')
请参阅此处了解更多信息。您还可以定义"named"格式,其中一些格式(short、long)已经预定义。
short
long
wooyq4lh2#
你也可以把它变短:
l(some_date, :format => '%d %B %Y')
kmpatx3s3#
在es.yml中放入:
es: date: formats: default: "%d / %m / %Y"
在index.html.erb中放入:
<%= l somemodel.datefield %>
3条答案
按热度按时间mkh04yzy1#
使用
l
(localize
的别名)方法代替原始strftime,如下所示:请参阅此处了解更多信息。
您还可以定义"named"格式,其中一些格式(
short
、long
)已经预定义。wooyq4lh2#
你也可以把它变短:
kmpatx3s3#
在es.yml中放入:
在index.html.erb中放入: