前提:
Rails4でRailsエンジン使用。
リポジトリA:親アプリ
リポジトリB:子アプリ
やりたいこと:
i18nのlocalesは、現状、親アプリ側でもやってるが、子アプリ側も参照できるようにしたい。
最終的な形としては、親アプリのview(haml)でも子アプリのview(liquid)でもlocalesを参照して翻訳機能を使えるようにしたい。
アプリ構成図のイメージ:
リポジトリA/
├ config/
│ └ locales/
│ └ ja.json
リポジトリB/
├ config/
│ └ application.rb
├ aaa/
│ └ locales/
│ └ ja.json
├ bbb/
│ └ locales/
│ └ ja.json
子アプリ側のフォルダは、ファイルパス(aaaやbbb)でそれぞれ区切られている。(ユニーク)
このパスを特定するのは、親アプリ側のモデルを参照すれば特定できるが、子アプリ側でそれを特定するのは困難。
今まさに詰まってる部分なので知見がある方やアドバイスいただける方ご協力よろしくお願いします。
発生している問題・エラーメッセージ
i18nのlocalesは、現状、親アプリ側でもやってるが、子アプリ側も参照できるようにしたい。
試したこと
リポジトリ側B側のconfig/appliacation.rbで
ruby
1config.i18n.load=path += Dir[Rails.root.join("{リポジトリAクラス.find_by(id: aaa)}", 'config', 'locales', '*.json').to_s]
と言ったような形で定義してみたがリポジトリAクラスが参照できなかった。
補足情報(言語/FW/ツール等のバージョンなど)
Mac OS Catalina v10.15.4
Ruby on Rails v4.2.6
Ruby v2.3.0
あなたの回答
tips
プレビュー