読者です 読者をやめる 読者になる 読者になる

BackgrounDRbとGetTextでARのカラムが日本語化されない件#2

rails

直ったみたい。

BackgrounDRbのworker側では、module GetTextのクラス変数@@__textdomainmanagersにActiveRecord::BaseやActiveRecord::Validationsが含まれていなかった(script/consoleとかから起動すると含まれている)。

なので、init_gettextのコードから必要そうなものを拝借し、それをworker側で実行するようにしたらきちんと日本語化された。

こんな感じ。

    domainname = 'hoge'
    locale_path = File.join(RAILS_ROOT, "locale")

    bindtextdomain(domainname, {:path => locale_path})
    textdomain_to(ActiveRecord::Base, domainname)
    textdomain_to(ActiveRecord::Validations, domainname)

    GetText.locale = 'ja'