問題タブ [rails-i18n]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - Rails I18n で yml ファイルからすべての翻訳を取得する方法
Railsは、解析されたすべての翻訳ymlファイルを一種の配列/ハッシュに保存していると思います。これにアクセスする方法はありますか?
たとえば、ファイルがある場合:
I18n.translations_store[:en][:test_string] のようなことはできますか? YAML::load を使用して yml ファイルを解析できましたが、私の場合、整理のために yml ファイルをサブフォルダーに分割しました。Rails は既にそれらすべてを解析していると確信しています。
ruby-on-rails - Rails 3 で I18n フォールバック機能を使用する方法
Rails 3 から「翻訳がありません」というエラー メッセージが表示されます。
本モデルがフォールバック メッセージを受け取らない理由がわかりません。を設定しconfig.i18n.fallbacks = true
ました。
ruby-on-rails - Rails:Date strftimeにデフォルトのロケールを認識させる方法は?
デフォルトのロケールをenvironment.rb
as de
(ドイツ語)に設定しています。
また、すべてのエラーメッセージがドイツ語で表示されるため、ロケールはサーバーによって取得されます。しかし、strftime
次のように日付を印刷しようとすると、次のようになります。
January, 11
予想されるドイツ語()ではなく、英語()で印刷されJanuar, 11
ます。
デフォルトのロケールに従って日付を印刷するにはどうすればよいですか?
ruby-on-rails - i18n複数化
i18nの複数形の文字列をrailsで翻訳できるようにしたいと思います。文字列は次のようになります:
また
複数のヘルパーメソッドを使用できることは知っていますが、これをi18nの翻訳に埋め込んで、将来的に自分の意見を台無しにする必要がないようにしたいと思います。どういうわけか複数形の翻訳で使われているのを読んだ:count
のですが、それがどのように実装されるかについての実際のリソースを見つけることができません。
翻訳文字列で変数を渡すことができることを知っていることに注意してください。私も次のようなものを試しました:
これは問題なく動作しますが、同じ考えの根本的な問題があります。'kid'
複数形ヘルパーで文字列を指定する必要があります。将来的にはビューの問題につながるので、やりたくありません。代わりに、すべてを翻訳に残し、ビューには何も残さないようにします。
どうやってやるの ?
ruby-on-rails - Rails3は特定のテキストのローカリゼーション言語を強制します
一部のテキストに対してのみ特定の言語への翻訳を強制する方法。何かのようなもの:
その理由は、ユーザーがコンテンツの言語を変更できるようにしたいが、サイトのインターフェイスは変更できないようにしたいからです。ありがとう!
ruby-on-rails - 選択ボックスの i18n
Role という名前のモデルがあります。そして、フォームで以下のヘルパーを使用しています。name 属性の値を別の言語に変更する方法はありますか?
ロケール/de.yml
ruby-on-rails - Rails I18nでのレイジールックアップは悪い習慣ですか?
Railsビューで短いi18nキー(例t '.submit_button'
)を使用すると、入力が簡単になりますが、実際には問題ありませんか?後でビューとパーシャルをリファクタリングすることにした場合は、それぞれのローカリゼーションエントリを更新することを忘れないでください。ビジネス上の意味で名前を付け、常に完全なキー名を指定する方が堅牢ではないでしょうか。
ruby-on-rails - Rails I18n、翻訳が存在するかどうかを確認しますか?
翻訳を出力する前に翻訳が存在するかどうかを確認したいRails3アプリで作業し、存在しない場合は静的テキストにフォールバックします。私は次のようなことをすることができます:
しかし、それよりも良い方法があるはずだと思います。将来、railsが「translationmissing」を「translationnotfound」に変更した場合はどうなりますか。または、なんらかの奇妙な理由でテキストに「翻訳がありません」が含まれている場合はどうなりますか。何か案は?
ruby-on-rails - rails-i18n による逆変換
文字列をさまざまな言語に翻訳するために、組み込みのRails i18nサポートを喜んで使用しています。最近ですが、この gem のデフォルトの動作を少し超えるものが必要になりました。
適切な言葉がないので、これを「逆翻訳」と呼びます。基本的には、ある言語の文字列があり、別のロケールでメソッドを呼び出して、ロケール文字列にマッピングが存在する場合にそのロケールに翻訳された文字列を取得できるようにしたいという考えです。
たとえば、私が持っていると仮定しますconfig/locales/en.yml
とでconfig/locales/ja.yml
:
l2l_translate
次に、英語のロケールで、文字列とロケールを引数としてこのメソッド (「ロケールからロケールへの翻訳」) を呼び出すと、日本語の翻訳が返されます。
また、これはもっとトリッキーですが、補間された文字列を逆一致できるようにしたいと考えています。だから私が持っていると言います:
構成/ロケール/en.yml
config/locales/ja.yml
次に、次のように英語から日本語に翻訳できるはずです。
したがって、基本的に文字列は正規表現で英訳文字列に一致させ、「5」を抜き出して引数「%d」として日本語訳に送信する必要があります。
1) 一致がない場合、または 2) 複数の一致がある場合は、明らかに潜在的な問題があります。これらは、たとえば例外を発生させるか、前者の場合は nil を返し、後者の場合は翻訳の配列を返すことで処理できます。いずれにせよ、それらはマイナーなポイントです。
私の基本的な質問は次のとおりです。このようなものは存在しますか? そうでない場合、それを開発する方法について誰か提案がありますか(gemとして)?
具体的に考えているアプリケーションは、日本語のサービスの API ラッパーです。マッチングして他の言語に翻訳できる日本語のパターンを指定できるようにしたいと考えています。デフォルトの i18n サポートはこれを行いません。また、他の gem がそうするかどうかも知りません。
アドバイスや提案をいただければ幸いです。参考までに、i18n-rails を使用した逆変換のトピックに関する 2010 年のこのディスカッションも参照してください。