rails-i18n 翻訳されない事件
rails s
で再起動かけてもダメ、
インデントを穴が開くほど確認してもダメ、、
パスが通ってないか確認しても合ってるはずなのにダメ、、、
ハゲる!!ってなったので誰かの手助けになればと思い、書きます。
今回の状況
application.rb
module TaskDo class Application < Rails::Application config.i18n.default_locale = :ja #アプリのデフォルトを日本語に指定 config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}').to_s] #locales以下にパスが通るように指定 end end
localesにactiverecord(model用)とview(view&controller用)という名前のファイルを作成
→それぞれにja.ymlを作成
そしてview用のja.ymlに翻訳を書き込んでちゃんと表示されるか確認してみることに。
config/local/view/ja.yml
ja: defaults: login: 'ログイン' register: '登録'
対象のview
<div class="actions"> <%= f.submit "登録",class: 'btn btn-primary' %> </div>
結果
...表示されない💩
gemの問題か...?→rails s
で再起動かけてもダメ、
じゃあviewでミスってるかja.ymlのよくあるインデントミスかな、
→view側は特に記述ミスはなさそう、、
→インデントを穴が開くほど確認してもダメ(これだけしか記述してないので確認するとこないやん、、)
パスの通し方を確認しても合ってるはずなのにダメ、、、
そしてググりにググって探し当てたのが「他のja.yml」が空だと翻訳されないという質問箱の内容。。
そんなパターンあるんか?と思いつつ、
local/activerecord/ja.ymlに
ja:
これだけ記述すると、、表示された!
まじか!!この3文字で俺の朝の30分.....orz
最後までご覧いただき有り難うございました。笑
この記事がもし誰かのエラーの手助けになれば、、、