【Rails の locale】ja.ymlに定義した文字列が複数のプラグインから参照されてしまう

解決したいこと

Redmineのプラグインの開発をやっています。

2つのプラグインをインストールしたとき、それらの ja.yml や en.yml にまったく同じキーの文字列が定義されていると、後勝ち?で一方の文字列のみが表示されてしまいます。

キーは(たまたま)同じなのですが、本当はプラグインごとに文字列を出し分けたいのにそれができないという現象です。

発生している問題・エラー

現象としては以下のような感じです。

  1. 一つ目のプラグインに「field_is_enabled: "有効/無効"」という定義がある
  2. 表示は当然「有効/無効」となる

image.png
3. 「field_is_enabled: "有効"」という定義をもつ二つ目のプラグインをインストールする
4. どちらのプラグインでも表示が「有効」のみとなってしまう
image.png

上記の例はあまり実害はありませんが、これらの設定のスコープを各プラグインに限定するような処理を入れたいと考えています。

自分で試したこと

プラグインの開発自体が初めてで、Ruby On Rails も初心者です。
なので、基本的なところが抜けているかもしれません。

何かお気づきの方がおられましたら、ご教授ください。

コメントを投稿

0 コメント