Rails:デートルのロケールを日付Strftimeに認識させるにはどうすればよいですか?
-
15-10-2019 - |
質問
デフォルトのロケールが設定されています environment.rb
なので de
(ドイツ人)。
また、ドイツ語のすべてのエラーメッセージが表示されるため、ロケールはサーバーによって選択されます。しかし、私が日付を印刷しようとするとき strftime
次のように:
some_date.strftime('%B, %y')
英語で印刷します(January, 11
)、そして予想されるドイツ語ではありません(Januar, 11
).
デフォルトのロケールに従って日付を印刷するにはどうすればよいですか?
解決
使用 l
(のエイリアス localize
)このような生のstrftimeの代わりに方法:
l(date, format: '%B %d, in the year %Y')
見る ここ 詳細については、それが役立つことを願っています。
また、「名前付き」フォーマットを定義することもできます。short
, long
)すでに事前に定義されています。
他のヒント
また、それを短くすることもできます:
l(some_date, :format => '%d %B %Y')
es.yml put:
es:
date:
formats:
default: "%d / %m / %Y"
in index.html.erb put:
<%= l somemodel.datefield %>
所属していません StackOverflow