【Rails】翻訳したモデルのattributeを取得する方法

【Rails】翻訳したモデルのattributeを取得する方法 Ruby / Rails

config/locales/ja.yml で翻訳したモデルの属性名等を取得する方法です。

指定された階層に置くことで、Model.model_name.humanでモデル名を、Model.human_attribute_name(attribute)で属性名を取得できます。

以下のコードはあなたはいくつ知っている?Rails I18nの便利機能大全! – Qiita からの引用です

config/locales/ja.yml
ja:
  activerecord:
    # モデル名
    models:
      user: 顧客
    # モデルごとのアトリビュート名
    attributes:
      user:
        name: 名前
        address: 住所
  # 全モデル共通のアトリビュート名
  attributes:
    created_at: 作成日時
    updated_at: 更新日時
> User.model_name.human
=> "顧客"
> User.human_attribute_name(:name)
=> "名前"
> User.human_attribute_name(:created_at)
=> "作成日時"

参考記事