複数形にすると、上書きした翻訳が置き換わらずに残り続ける現象

こんにちは :wave:

これは最近 js.badges.awarded 文字列で発生しました。私のサイトはハンガリー語です。

js.badges.awarded が実装されたとき、私は /admin/customize/site_texts でそれを翻訳しました。そして、複数形バージョンが上書きされた とき、単数形バージョン js.badges.awarded は固定され、/admin/customize/site_texts で見つけられなくなりました。
なぜなら、/admin/customize/site_texts で利用可能な文字列は js.badges.awarded.onejs.badges.awarded.other のみだったからです。

なぜこれが起こったのかはわかりませんが、おそらく js.badges.awarded には補間キーが含まれておらず、新しい複数形バージョンには %{number} が含まれているためかもしれません。:thinking:

したがって、テキストが上書きされている場合、更新されたバージョンはこれを置き換えず、以前に上書きされたテキストが保持されるようです。

Rails でこれを削除しました。

TranslationOverride.where(translation_key: "js.badges.awarded").delete_all

ちなみに、通常は文字列が翻訳され、その後複数形バージョンが登場した場合、ハンガリー語では other 形式が使用されます。

これはバグでしょうか?そして、複数形バージョンで発生したことが、複数形の変更なしでも発生する可能性があるのでしょうか?:thinking:

ありがとうございます :slightly_smiling_face:

「いいね!」 3

最近、複数形に関するいくつかの修正が行われ、これが解決された可能性があります。まだ再現できますか?

「いいね!」 2

いいえ、しかし、そのような変更なしでは再現できないことですが、この問題は次に関連していると思われます: Issue with pluralized (count) translation override これが複数形の編集を正しく行えなかった原因だったのかもしれません。これでうまくいきました! :slightly_smiling_face:

「いいね!」 3

素晴らしいです。:slight_smile: それは有望に聞こえるので、これで一旦閉じます。もし再度発生した場合は、お知らせいただければ再度開きます。:+1:

「いいね!」 3