web-dev-qa-db-ja.com

Rails 4でデフォルトの日付と時刻の形式を変更する

Rails 4.でデフォルトの日付形式を変更する方法を探していました。

22
smile2day

Railsの国際化(I18n)API を通じて素晴らしいアプローチを見つけました

I18n構成にフォーマットを追加することにより、データと時間のフォーマットを「変換」できます。

config/locales/en.yml

en:
  date:
    formats:
      default: "%d/%m/%Y"
  time:
    formats:
      default: "%d/%m/%Y %H:%M"

注:最初に行ったように、インデント用のタブがないことを忘れないでください:)


コメントでNoelProfが述べたように

I18n変換を使用するには、ビューで日付の前のl(小文字のL)を忘れないでください。例:<%= l your_date%>

他の方法がうまく機能している場合は、コメントしてください。

45
smile2day

これを追加

# Date
Date::DATE_FORMATS[:default] = "%d/%m/%Y" 

# Time
Time::DATE_FORMATS[:default] = "%d/%m/%Y %H:%M" 

config/initializers/date_time.rb

次にサーバーを再起動します。

29
732

I18n変換を使用する場合は、ビューの日付の前にlメソッドを忘れないでください。

<%= l your_date %>
3
Markus Andreas