ユーザー作成とか、ログインとか、何か投稿するときのエラー文をカッコよく英語のままにするのもありですが、分かりやすく日本語にしたいときありますよね?
そんなあなたにGemを使った解決法でお伝えしていきます。
#Gemをインストール
Gemfile
gem 'rails-i18n'
$ bundle install
##エラーメッセージを日本語に設定
config/application.rb
module SampleApp
class Application < Rails::Application
config.i18n.default_locale = :ja
config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}').to_s]
end
end
##どのコードが、どの日本語に対応させるのかを設定
専用のファイルを使って設定していきます。
$ mkdir config/locales/models
$ touch config/locales/models/ja.yml
ja.yml
ja:
activerecord:
models:
user: ユーザ
attributes:
user:
name: 名前
email: メールアドレス
password: パスワード
password_confirmation: パスワード(再入力)
##エラーメッセージを手動追加 errors.add
user.errors.add(:base, "追加エラー")
もちろんエラーを生成してから出ないと、追加できないので、流れとしては以下の通り。
> user = User.new
> user.errors
> user.errors.add(:base, "追加エラー")
> user.errors.full_messages
=> ["追加エラー"]