rails6 曜日を日本語で取得する

rails6 曜日を日本語で取得する

rails6でrails-i18nを使用して、曜日を日本語で取得するまでの手順を記述してます。Railsのバージョンは6.1.1を使用してます。

環境

  • OS CentOS Linux release 7.9.2009 (Core)
  • Ruby 2.7.2
  • Rails 6.1.1
  • rbenv 1.1.2-40-g62d7798

rails-i18nインストール

Gemfileに以下を追加して、

gem "rails-i18n"

rails-i18nをインストールを実行します。

bundle install

rails-i18n使い方

まず「config/locales」配下に「ja.yml」という名前でファイルを以下の内容で作成します。

ja:

次に「config」配下にある「application.rb」に以下を追加します。

  class Application < Rails::Application    
  # 追加
    config.i18n.default_locale = :ja
    config.i18n.load_path += Dir[Rails.root.join("config", "locales", "**", "*.yml").to_s]

  end

これで後は、railsを再起動します。

Viewで表示

あとは、viewで利用した場合は、値が以下のようになっているので

<%= t("date.day_names") %>

表示結果

viewで例えば日曜日を表示する場合は、引数に「0」を指定すれば表示することが可能です。

<%= t("date.day_names")[0] %>

引数を「1」に指定すれば「月曜日」が表示されます。

<%= t("date.day_names")[1] %>