🪬
【Rails】翻訳したモデルのattributeを取得する方法
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)
=> "作成日時"
参考記事
Discussion