【Rails】エラーメッセージを日本語に設定する
やりたいこと
Validationエラー時の、エラーメッセージを任意のものに設定する
やること
1. application.rbに以下を追加
module Hogehoge class Application < Rails::Application # 追加 config.i18n.default_locale = :ja end end
config.i18n.default_localeは、Rails全体でどの自然言語を利用するか、という設定らしい。
2. 日本語化に必要なファイルをダウンロードする
https://raw.githubusercontent.com/svenfuchs/rails-i18n/master/rails/locale/ja.yml
3. 日本語化ファイルをconfig/locales/以下にja.ymlで配置する
ここまで設定して、再起動すると、エラーメッセージが
"Modelの属性名(emailなど)"を入力してください
となる。
4. モデルの各属性に対応する日本語を設定する
設定ファイルをconfig/locales/models/にja.ymlで作成
email: メールアドレス
のように各属性に対応する日本語をja.ymlに作成していく
5. application.rbに4で作成したja.ymlを読み込ませる処理を追加する
module Hogehoge class Application < Rails::Application config.i18n.default_locale = :ja # 追加 config.i18n.load_path += Dir[Rails.root.join('path', 'to', 'ymlfile', '*.{yml}').to_s] end end
あとはRailsサーバーを再起動して、終わりです。