#3 RailsでActiveRecord のエラーメッセージを日本語化する(ActiveHeart)
ブログの更新も大分滞っていました。仕事が忙しくてなかなかWebScrapも作成する時間があまり取れないんですよね。おおよそ機能はつくれたのでいくつか、忘れないようにメモしときます。
今回は、Railsのエラーメッセージを日本語化するというもの。
Ruby-GetTextを使うのが一般的のようですが、今回はそこまできっちり作らなくても良いかなと思いActiveHeartを使用しました。以下手順載せます。すごい簡単ですよ。
まず以前にSubversionをインストールしてますので、railsコマンドで生成したフォルダで以下実行。
$ ruby script/plugin install http://svn.rails2u.com/public/plugins/trunk/active_heart/ + ./active_heart/init.rb + ./active_heart/lib/active_record_messages_ja.rb + ./active_heart/lib/iso2022jp_mailer.rb + ./active_heart/lib/trans_sid.rb
これだけでエラーメッセージが日本語化します。すごく簡単ですよね。
テーブルのカラム名はそのままですので、その場合はmodelに以下設定をすればOK
set_field_namesでカラム名と表示文字列をマッピングする
例)
class Bookmark < ActiveRecord::Base
set_field_names :title => 'タイトル', :url => 'URL'
validates_presence_of :title, :url,
:message => "が未入力です"
end
これで日本語化はOKです。ちなみにActiveHeart自体は非推奨とされており、Ruby-GetTextを使用するようにコメントされていますね。確かにサービスのグローバル化を考えればその方が良いと思います。
私はActiveRecordのエラー文言を日本語にしたいだけでしたので他のモジュールはコメントアウトしました。
一応そちらも記載しておきます。
warn 'ActiveHeart is obsolute plugin!' warn 'Please use Ruby-GetText or jpmobile' require_dependency 'active_record_messages_ja'if defined? ActiveRecord::Base
# Comment Out!
#require_dependency 'trans_sid' #require_dependency 'iso2022jp_mailer' if defined? ActionMailer::Base
【参考サイト】
トラックバック(0)
このブログ記事に対するトラックバックURL(トラックバックは承認後に公開されます)


UksT2d rlovittwffet, [url=http://gumssziegpno.com/]gumssziegpno[/url], [link=http://dwnpeccsviwn.com/]dwnpeccsviwn[/link], http://tcuzyozctaas.com/