25
26

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.

deviseを日本語表記にする。

Last updated at Posted at 2018-10-20

#手順
deviseを入れた後、
ログイン時やログアウト時に出てくる文字を日本語にしたい。あとフォームに入力したエラーメッセージとか。

##gemのインストール

gem 'devise-i18n'
gem 'devise-i18n-views'

$bundle install

###読み込む用の日本語対応のymlファイルを作成
$rails g devise:views:locale ja

##日本語で反映されるようにconfig/application.rbに追記
config/application.rbファイル内の
class Applicationの中に
config.i18n.default_locale = :jaを記入。

これで一旦完成です。

###自分用にymlファイルを修正する
空欄で入力した時に表示される、
「○○ cant be blank」の部分を日本語にしたい。
階層を作って、修正する。

###修正前

devise.views.ja.yml
ja:
  activerecord:
    attributes:
      user:
        current_password: "現在のパスワード"
        email: "メールアドレス"
        password: "パスワード"
        password_confirmation: "確認用パスワード"
        remember_me: "ログインを記憶"
    models:
      user: "ユーザ"
  devise:
    confirmations:
      new:
        resend_confirmation_instructions: "アカウント確認メール再送"
以下省略

###修正後

devise.views.ja.yml
ja:
  activerecord:
    errors:
      models:
        user:
          attributes:
            email:
              blank: "が入力されていません。"
            password:
              blank: "が入力されていません。"
        message:                                                    ←これは自分で作ったmodel
          attributes:
            title:                                                ←自分で作ったカラム名
              blank: "が入力されていません。"
            content:                                            ←自分で作ったカラム名
              blank: "が入力されていません。"
    attributes:
      user:
        current_password: "現在のパスワード"
        email: "メールアドレス"
        password: "パスワード"
        password_confirmation: "確認用パスワード"
        remember_me: "ログインを記憶"
    models:
      user: "ユーザ"
  devise:
    confirmations:
      new:
        resend_confirmation_instructions: "アカウント確認メール再送"
以下省略

カラム名の日本語化は別途で
config/locales/models.ja.ymlを作成

config/locales/models.ja.yml
ja:
  activerecord:
    attributes:
      post: #これがmodel
        question_title: 質問
        answer: 回答

参考:
https://qiita.com/shizuma/items/a52fd0ef5b60d61fa330
http://31webcreation.hatenablog.com/entry/translate-devise-to-japanese

25
26
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
25
26

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?