1
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 1 year has passed since last update.

Deviseのエラーメッセージを日本語化する

Posted at

Devise日本語化の設定

application.rbを編集して、言語設定を変更する

下記の様にconfig/application.rbの中にconfig.i18n.default_locale = :jaを追記する。

config/application.rb
module -------
  class Application < Rails::Application
    # Initialize configuration defaults for originally generated Rails version.
    config.load_defaults 6.0

    # 日本語の言語設定
    config.i18n.default_locale = :ja
    # Settings in config/environments/* take precedence over those specified here.
    # Application configuration can go into files in config/initializers
    # -- all .rb files in that directory are automatically loaded after loading
    # the framework and any gems in your application.
  end
end

次はGemfileにgem 'rails-i18n'を追記する

Gemfile
gem 'rails-i18n'

続いてインストールを行う

ターミナル
bundle install

これである程度は日本語化されるのですが、まだ完全では無いので次は
localeファイルを準備します、localeファイルとは、様々な言語に対応できる言語ファイルで英語を日本語に翻訳してくれます
そして、その日本語へ翻訳するためのファイルをYAMLと言います
YAMLとは、ファイルの書き方のルールの一つで、中身が文字だけで記述されてるテキストファイルです

config/localesディレクトリにdevise.ja.ymlというファイルを作成します
devise.ja.yml内に以下のサイトから記述内容をコピーして貼り付ける
ja.yml

以上でDeviseの日本語化になります、次はカラム名も日本語化して行きます

DBのカラム名を日本語化する

config/localesディレクトリに、ja.ymlというファイルを作成します
以下の様にモデル名、カラムを記述します

config/locales/ja.yml
ja:
  activerecord:
    attributes:
      user:
        name: ニックネーム
        birth_date: 誕生日
        last_name: 名字
        first_name: 名前
        last_name_kana: 名字(カナ)
        first_name_kana: 名前(カナ)
      item:
        product: 商品名
        image: 画像
        product_description: 商品の説明
        price: 値段
        area_id: 発送元の地域
        category_id: カテゴリー
        condition_id: 商品の状態
        shipping_charge_id: 発送料の負担
        shipping_day_id: 発送までの日数

  activemodel:
    attributes:
      purchase_shipping:
        postal_code: 郵便番号
        token: クレジットカード
        area_id: 都道府県
        municpality: 市区町村
        address1: 番地
        phone: 電話番号

気をつける事としてモデルのactiverecordやactivemodelは種類が違うので分けないと行けません

これで日本語化完了です

参考にさせて頂いたサイト

【Rails】バリデーションエラーメッセージの日本語化〜ja.yml〜

1
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
1
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?