0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

3ヶ月学んだことのアウトプットチャレンジAdvent Calendar 2020

Day 22

Rails:deviseを含めたバリデーションメッセージを日本語化

Last updated at Posted at 2020-12-22

最初に

カレンダー企画2020の22日目
プログラミングの勉強を始めて3ヵ月程経ったので学んだことのメモをアウトプットとして記事に残します。
これからプログラミングの世界に入る人の手助けになれたら嬉しい限りです。
間違っていたり、言葉が違っていたり、誤解されるような言葉があったら教えてください^^
言葉を長々と読みづらかったら申し訳ありません。少しずつなれてがんばります。

deviseを含めたバリデーションメッセージを日本語化にする

日本人の使用を想定するものであればアプリケーション内は日本語にする方が良いですよね!
そんなわけで日本語化に取り組んだ内容をメモしておきます。

やること

  1. config/application.rbに記述をする。
  2. config/locales下に「ja.yml」「devise.ja.yml」を新規作成する
  3. 新規作成したファイルの中身は先人の力をお借りしてコピペする。
  4. カラム名になるところはおそらくまだ英語なので、ここは自力でja.ymlに記述する。

以上

1. config/application.rbに記述をする

config/application.rb

config.i18n.default_locale = ja

ファイル内に記述をしてください。

2. config/locales下に「ja.yml」「devise.ja.yml」を新規作成する

こんな感じ

スクリーンショット 2020-12-22 10.56.07.png

(en.ymlはいらないのだろうけど怖くて消してないです^^; 一発でdevise.ja.ymlを作成する事もできるみたいですので興味のある方調べて見てください。)

3. 新規作成したファイルの中身は先人の力をお借りしてコピペする

先人の方に感謝を伝えながら拝借^^

ja.yml
devise.ja.yml

4. カラム名になるところはおそらくまだ英語なので、ここは自力でja.ymlに記述する

config/locales/ja.yml

ja:
  activerecord:
    models:
      member: "メンバー"
      post: "投稿"
    attributes:
      member:
        first_name: "姓"
        last_name: "名"
        email: "メールアドレス"
        encrypted_password: "パスワード"
      post:
        title: "タイトル"
        body: "内容"

私はこんな感じで追記をしました。

最後に

すべてのカラムをやっても良いと思うのですが、エラー文で使うところなど表示されるものだけを行いました。

あと、model用のja.ymlを分けている人もいました。そっちの方が管理しやすかったな〜〜〜って作り終わってから思いました。

参考サイトこんな感じにやると管理しやすいかもしれないです。まだ私はやってないので今度やってみようと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?