2012年9月18日火曜日

バリデーションメッセージの日本語対応

en.yml の locale ファイルのトップにも書かれていますが、下記のサイトにアクセスすると、言語ごとに用意されています。
https://github.com/svenfuchs/rails-i18n/tree/master/rails%2Flocale

デフォルトは、英語なので、例えばName欄が空欄だと、下記のようなエラーになります。
"Name can't be blank"

日本語対応にすると
"Name を入力してください"
になります。

しかし、"名前 を入力してください"にしたいところです。

では、どうすれば良いのでしょうか。

ja.ymlのロケールファイルに下記のように記載します。
 activerecord:
    attributes:
      user:
        name: "名前"

こう書くことで、UserモデルのNameカラムを"名前"にして表示します。

【参考】
http://guides.rubyonrails.org/i18n.html#translations-for-active-record-models

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。